This an old procedure i created for my event bot customers to make life more easier and save their times
this release contains 2 procedures
[1] creating full account with character
[usage]
[2] add a character to account username
[usage]
Hope it save your time
trying to help not more
this release contains 2 procedures
[1] creating full account with character
USE [SRO_KINGDOLLAR_EVENT]
GO
/****** Object: StoredProcedure [dbo].[_KingDollar_CreateFULLCharacter] Script Date: 03/08/2016 07:10:47 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create proc [dbo].[_KingDollar_CreateFULLCharacter]
@username varchar(24),
@Password varchar(50),
@CharName varchar (64),
@CharType varchar(8),
@CharGender varchar(6),
@town varchar(64),
@CharLevel tinyint,
@CharStr smallint,
@CharInt smallint,
@CharGold bigint,
@CharSP int,
@CharHP int,
@CharMP int,
@CharInv varchar(145),
@weaponName varchar(264),
@weaponType varchar(64),
@weaponDegree varchar(24),
@ArmorName varchar(264),
@ArmorType varchar(64),
@ArmorDegree varchar(24),
@AccountType varchar(25)
AS
SET NOCOUNT ON
--################################################## ###########################
--################################################## ###########################
--###############/* TROY ONLINE PROCEDURES -- KING DOLLAR -- */--##############
--################################################## ###########################
--################################################## ###########################
SELECT @AccountType = CASE WHEN @AccountType = 'GM' THEN '1' WHEN @AccountType = 'Player' THEN '3' END
IF NOT EXISTS (SELECT StrUserID FROM SRO_VT_ACCOUNT.dbo.TB_User WHERE StrUserID = @username)
BEGIN
INSERT INTO SRO_VT_ACCOUNT..TB_User (StrUserID,password,sec_content,sec_primary) values @username,LOWER(CONVERT(varchar(50),HASHBYTES('MD5',@Passwo rd), 2)),@AccountType,@AccountType)
END
ELSE IF EXISTS (SELECT StrUserID FROM SRO_VT_ACCOUNT.dbo.TB_User WHERE StrUserID = @username)
BEGIN
PRINT 'User already exists'
END
DECLARE @userJID INT
DECLARE @Slot INT
DECLARE @temp INT
DECLARE @NewCharID INT
SET @NewCharID = 0
SELECT @userJID = JID FROM SRO_VT_ACCOUNT..TB_User WHERE StrUserID = @username
/* DECLARING SOME SHITS */
DECLARE @CharScale tinyint
DECLARE @ArmorGender varchar(7)
DECLARE @RefCharID int
DECLARE @StartRegionID INT
DECLARE @StartPos_X real
DECLARE @StartPos_Y real
DECLARE @StartPos_Z real
/* SELECTING SOME SHITS */
SELECT @CharScale = CONVERT(int,34+(64-34)*RAND());
SELECT @RefCharID = CASE WHEN @CharType = 'Chinese' AND @CharGender = 'Male' THEN (SELECT CONVERT(int,1907+(1919-1907)*RAND())) WHEN @CharType = 'Chinese' AND @CharGender = 'Female' THEN (SELECT CONVERT(int,1920+(1932-1920)*RAND())) WHEN @CharType = 'Europe' AND @CharGender = 'Male' THEN (SELECT CONVERT(int,14875+(14887-14875)*RAND())) WHEN @CharType = 'Europe' AND @CharGender = 'Female' THEN (SELECT CONVERT(int,14888+(14900-14888)*RAND())) END
IF @town = 'Jangan')
BEGIN
SET @StartRegionID = '25000'
SET @StartPos_X = '995'
SET @StartPos_Y = '-32'
SET @StartPos_Z = '1132'
END
ELSE IF @town = 'Donwhang')
BEGIN
SET @StartRegionID = '26265'
SET @StartPos_X = '957'
SET @StartPos_Y = '-80'
SET @StartPos_Z = '1508'
END
ELSE IF @town = 'Hotan')
BEGIN
SET @StartRegionID = '23687'
SET @StartPos_X = '1138'
SET @StartPos_Y = '250'
SET @StartPos_Z = '153'
END
ELSE IF @town = 'SamarKand')
BEGIN
SET @StartRegionID = '27244'
SET @StartPos_X = '271'
SET @StartPos_Y = '180'
SET @StartPos_Z = '1438'
END
ELSE IF @town = 'Constantinople')
BEGIN
SET @StartRegionID = '26959'
SET @StartPos_X = '1030'
SET @StartPos_Y = '80'
SET @StartPos_Z = '512'
END
ELSE
BEGIN
SET @StartRegionID = '25000'
SET @StartPos_X = '995'
SET @StartPos_Y = '-32'
SET @StartPos_Z = '1132'
END
-----------------------------------------------------------------------------
-- 1. ij¸¯ÅÍ ½½·Ô ³Ñ¹ö°¡ validÇÑ °ÍÀÎÁö, ±×¸®°í ºó½½·ÔÀÌ ¸Â´ÂÁö ¸ÕÀú üũÇÑ´Ù.
-----------------------------------------------------------------------------
-- start by novice.
SELECT @temp = count(CharID) FROM SRO_VT_SHARD.dbo._User WITH (NOLOCK) WHERE UserJID = @userJID
IF @temp >= 4)
BEGIN
-- ³Ê¹« ¸¹ÀÚ³ª
RETURN -2
END
-- finish by novice.
-----------------------------------------------------------------------------
-- 2. ij¸¯ÅÍ Ãß°¡Çϱâ
-----------------------------------------------------------------------------
IF (@CharScale > 68) -- 0100 0100 --> 68 ÀÌ´Ù!
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ! ½ºÄÉÀÏ °ªÀÌ ÀÌ»óÇÏ´Ù!
RETURN -3
END
EXEC @temp = SRO_VT_SHARD.dbo._IsExistingCharName @CharName
IF @temp <> 0)
BEGIN
print 'Charname exist but account created succesfully,you can use proc of [_KingDollar_AddCharacter_ToAccount]'
-- ÀÌ¹Ì »ç¿ëÁßÀÎ À̸§À̶ó´Âµ¥?
RETURN -4
END
BEGIN TRANSACTION
-- Àδø½Ã½ºÅÛÀÌ Àû¿ëµÇ¸é¼* ¸¶Áö¸·¿¡ WorldID¿Í 1°ªÀ» ´õ ³Ö¾î ÁÖ¾ú´Ù!
INSERT INTO SRO_VT_SHARD.dbo._Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize,
LastLogout, CurLevel, MaxLevel, RemainGold , RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID)
VALUES (@RefCharID, @CharName, @CharScale, @CharStr, @CharInt, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, 0, @CharInv,
GetDate(), @CharLevel, @CharLevel, @CharGold, @CharSP, @CharHP,@CharMP, 1, 1, 1, 1)
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END
-- start by novice.
-- ÀÌÁ¦ Slot ¾È¾´´Ù.. ±×³É Insert ¸¸..
INSERT INTO SRO_VT_SHARD.._AccountJID values @username, @userJID,0)
INSERT INTO SRO_VT_SHARD.._User VALUES @userJID, @NewCharID)
-- finish by novice.
-----------------------------------------------------------------------------
-- 3-1. Àåºñ ½½·Ô ä¿ì±â
-- [Àκ¥Å丮 ½½·Ô 96°³] + [Àåºñ½½·Ô 13°³] <- Àκ¥Å丮 È®Àå ¼*ºñ½º ÈÄ 48°³¿¡¼* 96°³·Î Áõ°¡!!!(woos0)
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO SRO_VT_SHARD.._Inventory(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM SRO_VT_SHARD.._RefDummySlot with( nolock )
WHERE cnt < 109
IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -7
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-- µðÆúÆ®·Î ¼±ÅÃÇÑ ¾ÆÀÌÅÛÀ» ´Ù½Ã ³Ö¾îÁÖÀÚ...
/* ¿ä·± ¼ø¼*·Î Á¤ÀǵǾî ÀÖ´Ù.
0: EQUIP_SLOT_HELM
1: EQUIP_SLOT_MAIL,
2: EQUIP_SLOT_SHOULDERGUARD,
3: EQUIP_SLOT_GAUNTLET,
4: EQUIP_SLOT_PANTS,
5: EQUIP_SLOT_BOOTS,
6: EQUIP_SLOT_WEAPON,
7: EQUIP_SLOT_SHIELD or ARROW,
9: EQUIP_SLOT_EARRING,
10: EQUIP_SLOT_NECKLACE,
11: EQUIP_SLOT_L_RING,
12: EQUIP_SLOT_R_RING,
*/
/* SELECTING SHITS -- STARTED BY KINGDOLLAR */
-- BEGIN
SELECT @weaponType = CASE WHEN @weaponType = 'Normal' THEN + '_A' WHEN @weaponType = 'Sos' THEN + '_A_RARE' WHEN @weaponType = 'Moon' THEN + '_B_RARE' WHEN @weaponType = 'Sun' THEN + '_C_RARE' END
SELECT @ArmorName = CASE WHEN @ArmorName = 'Garment' THEN '_CLOTHES_' WHEN @ArmorName = 'Protector' THEN '_LIGHT_' WHEN @ArmorName = 'Armor' THEN '_HEAVY_' END
SELECT @ArmorType = CASE WHEN @ArmorType = 'Normal' THEN '_A' WHEN @ArmorType = 'Sos' THEN '_A_RARE' WHEN @ArmorType = 'Moon' THEN '_B_RARE' WHEN @ArmorType = 'Sun' THEN '_C_RARE' END
SELECT @ArmorGender = CASE WHEN @CharGender = 'Male' THEN '_M' WHEN @CharGender = 'Female' THEN '_W' END
-- END
/* DECLARING SHITS -- STARTED BY KINGDOLLAR */
-- BEGIN
DECLARE @weapon_Codename varchar(129)
DECLARE @Hat_Codename varchar(129)
DECLARE @Chest_Codename varchar(129)
DECLARE @Legs_Codename varchar(129)
DECLARE @Shoulder_Codename varchar(129)
DECLARE @Hand_Codename varchar(129)
DECLARE @Foot_Codename varchar(129)
DECLARE @Shield_Codename varchar(129)
DECLARE @Ring_Codename varchar(129)
DECLARE @Earring_Codename varchar(129)
DECLARE @Necklace_Codename varchar(129)
-- END
/* SELECTING SHITS PART 2 -- STARTED BY KINGDOLLAR */
-- BEGIN
IF (@RefCharID BETWEEN 1907 AND 1932)
BEGIN
SELECT @weapon_Codename = CASE WHEN @weaponName = 'Sword' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'Blade' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_BLADE_' @weaponDegree @weaponType) WHEN @weaponName = 'Glavie' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_TBLADE_' @weaponDegree @weaponType) WHEN @weaponName = 'Bow' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_BOW_' @weaponDegree @weaponType) WHEN @weaponName = 'Spear' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SPEAR_' @weaponDegree @weaponType) END
SELECT TOP 1 @Hat_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_H A'+@ArmorType
SELECT TOP 1 @Chest_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_B A'+@ArmorType
SELECT TOP 1 @Legs_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_L A'+@ArmorType
SELECT TOP 1 @Shoulder_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_S A'+@ArmorType
SELECT TOP 1 @Hand_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_A A'+@ArmorType
SELECT TOP 1 @Foot_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_F A'+@ArmorType
SELECT TOP 1 @Shield_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SHIELD_' @weaponDegree @weaponType
SELECT TOP 1 @Ring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_RING_' @weaponDegree @weaponType
SELECT TOP 1 @Earring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_EARRING_' @weaponDegree @weaponType
SELECT TOP 1 @Necklace_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_NECKLACE_' @weaponDegree @weaponType
END
ELSE IF (@RefCharID BETWEEN 14875 AND 14900)
BEGIN
SELECT @weapon_Codename = CASE WHEN @weaponName = 'Staff' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_TSTAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'TwoHandedSword' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_TSWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'OneHanded' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_SWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'Dagger' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_DAGGER_' @weaponDegree @weaponType) WHEN @weaponName = 'CrossBow' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_CROSSBOW_' @weaponDegree @weaponType) WHEN @weaponName = 'WarLock' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_DARKSTAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'Cleric' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_STAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'Harp' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_HARP_' @weaponDegree @weaponType) END
SELECT TOP 1 @Hat_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_H A'+@ArmorType
SELECT TOP 1 @Chest_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_B A'+@ArmorType
SELECT TOP 1 @Legs_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_L A'+@ArmorType
SELECT TOP 1 @Shoulder_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_S A'+@ArmorType
SELECT TOP 1 @Hand_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_A A'+@ArmorType
SELECT TOP 1 @Foot_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_F A'+@ArmorType
SELECT TOP 1 @Shield_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_SHIELD_' @weaponDegree @weaponType
SELECT TOP 1 @Ring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_RING_' @weaponDegree @weaponType
SELECT TOP 1 @Earring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_EARRING_' @weaponDegree @weaponType
SELECT TOP 1 @Necklace_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_NECKLACE_' @weaponDegree @weaponType
END
-- END
/* DECLARING SHITS PART 2 -- STARTED BY KINGDOLLAR */
-- BEGIN
DECLARE @weapon_ID bigint
DECLARE @weapon_Dur bigint
DECLARE @weapon_Shield_Status tinyint
DECLARE @Hat_ID bigint
DECLARE @Hat_Dur bigint
DECLARE @Chest_ID bigint
DECLARE @Chest_Dur bigint
DECLARE @Legs_ID bigint
DECLARE @Legs_Dur bigint
DECLARE @Shoulder_ID bigint
DECLARE @Shoulder_Dur bigint
DECLARE @Hand_ID bigint
DECLARE @Hand_Dur bigint
DECLARE @Foot_ID bigint
DECLARE @Foot_Dur bigint
DECLARE @Ring_ID bigint
DECLARE @Earring_ID bigint
DECLARE @Necklace_ID bigint
DECLARE @Shield_ID bigint
DECLARE @Shield_Dur bigint
-- END
/* SELECTING SHITS PART 3 -- STARTED BY KINGDOLLAR */
-- BEGIN
SELECT TOP 1 @weapon_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @weapon_Codename
SELECT TOP 1 @Shield_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Shield_Codename
SELECT TOP 1 @Hat_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Hat_Codename
SELECT TOP 1 @Chest_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Chest_Codename
SELECT TOP 1 @Legs_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Legs_Codename
SELECT TOP 1 @Shoulder_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Shoulder_Codename
SELECT TOP 1 @Hand_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Hand_Codename
SELECT TOP 1 @Foot_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Foot_Codename
SELECT TOP 1 @Ring_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Ring_Codename
SELECT TOP 1 @Earring_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Earring_Codename
SELECT TOP 1 @Necklace_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Necklace_Codename
SELECT TOP 1 @weapon_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @weapon_Codename
SELECT TOP 1 @Shield_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Shield_Codename
SELECT TOP 1 @Hat_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Hat_Codename
SELECT TOP 1 @Chest_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Chest_Codename
SELECT TOP 1 @Legs_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Legs_Codename
SELECT TOP 1 @Shoulder_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Shoulder_Codename
SELECT TOP 1 @Hand_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Hand_Codename
SELECT TOP 1 @Foot_Dur =It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Foot_Codename
SELECT TOP 1 @weapon_Shield_Status = It.TwoHanded FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @weapon_Codename
-- END
DECLARE @ItemID BIGINT
SET @ItemID = 0
-- »ó°©
IF (@Hat_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 0, @Hat_ID, @Hat_Dur --HAT
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Shoulder_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 2, @Shoulder_ID, @Shoulder_Dur --Shoulder
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Hand_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 3, @Hand_ID, @Hand_Dur --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Ring_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 11, @Ring_ID, 1 --Ring
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 12, @Ring_ID, 1 --Ring
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Earring_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 9, @Earring_ID, 1 --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Necklace_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 10, @Necklace_ID, 1 --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Chest_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 1, @Chest_ID, @Chest_Dur --Chest
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- ¹ÙÁö
IF (@Legs_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 4, @Legs_ID, @Legs_Dur --Legs
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF (@Foot_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 5, @Foot_ID, @Foot_Dur --Foot
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF @weapon_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 6, @weapon_ID, @weapon_Dur --Weapon
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
IF @weapon_Shield_Status = 0)
BEGIN
IF (@Shield_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 7, @Shield_ID, @Shield_Dur --Shield
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
END
-----------------------------------------------------------------------------
-- 3-2. ¾Æ¹ÙŸ Inventory ½½·Ô ä¿ì±â
-- [¾Æ¹ÙŸ Àκ¥Å丮 ½½·Ô 5°³]
-- APPLY_AVATAR_SYSTEMÀÌ Àû¿ëµÇ¸é¼* Ãß°¡µÇ´Â ºÎºÐ
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO SRO_VT_SHARD.._InventoryForAvatar(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM SRO_VT_SHARD.._RefDummySlot with( nolock )
WHERE cnt < 5
IF (@@ERROR <> 0)
BEGIN
-- ¾Æ¹ÙŸ Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -14
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-----------------------------------------------------------------------------
-- default skill³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
DECLARE @country tinyINT
EXEC @country = SRO_VT_SHARD.._GetObjCountry @RefCharID
INSERT INTO SRO_VT_SHARD.._CharSkillMastery (CharID, MasteryID, Level)
SELECT @NewCharID, MasteryID, 0
FROM SRO_VT_SHARD.._RefCharDefault_SkillMastery with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -15
END
INSERT INTO SRO_VT_SHARD.._CharSkill (CharID,SkillID,Enable)
SELECT @NewCharID, SkillID, 1
FROM SRO_VT_SHARD.._RefCharDefault_Skill with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -16
END
-----------------------------------------------------------------------------
-- ±âº» Äù½ºÆ® ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0
FROM SRO_VT_SHARD.._RefQuest
WHERE CodeName in (SELECT CodeName FROM SRO_VT_SHARD.._RefCharDefault_Quest with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and Service = 1)
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -17
END
-----------------------------------------------------------------------------
-- Static Avatar Initial Record ³Ö±â
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._StaticAvatar(CharID) values(@NewCharID)
IF (@@ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END
-----------------------------------------------------------------------------
-- Trijob ä¿ö³Ö±â!!!!!
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -19
END
-----------------------------------------------------------------------------
-- CharList¿¡ ID ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT SRO_VT_SHARD.._CharNameList VALUES(@CharName, @NewCharID)
/* inserting into chest */
-- BEGIN
DECLARE @Start tinyint = 0
DECLARE @End tinyint = 239
WHILE @Start < @End
BEGIN
SET @Start += 1
INSERT INTO SRO_VT_SHARD.._Chest (UserJID,Slot) VALUES @userJID,@Start)
END
exec SRO_VT_SHARD.._InsertToChestInfo
-- END
-- Quick Slot Á¤º¸ ÀúÀå¿ë!!!
exec SRO_VT_SHARD.dbo._AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION
print 'JID : '+CONVERT(varchar(25) @userJID)
print 'Username : ' @username
print 'Password : '+@Password
print 'CharID : '+CONVERT(varchar(25),@NewCharID)
print 'Charname : '+@CharName
print 'CharType : '+@CharType
print 'CharGender : '+@CharGender
print 'CharTown : ' @town
print 'CharScale : '+CONVERT(varchar(25),@CharScale)
print 'Charlevel : '+CONVERT(varchar(25),@CharLevel)
print 'Charstr : '+CONVERT(varchar(25),@CharStr)
print 'Charint : '+CONVERT(varchar(25),@CharInt)
print 'CharGold : '+CONVERT(varchar(25),@CharGold)
print 'CharSP : '+CONVERT(varchar(25),@CharSP)
print 'CharHP : '+CONVERT(varchar(25),@CharHP)
print 'CharMP : '+CONVERT(varchar(25),@CharMP)
print 'Char_InvSlot : '+CONVERT(varchar(25),@CharInv)
print 'Weapon_Name : ' @weaponName
print 'Weapon_Type : ' @weaponType
print 'Weapon_Degree : ' @weaponDegree
print 'Armor_Name : '+@ArmorName
print 'Armor_Type : '+@ArmorType
print 'Armor_Degree : '+@ArmorDegree
print 'character has been created successfully'
RETURN @NewCharID
GO
/****** Object: StoredProcedure [dbo].[_KingDollar_CreateFULLCharacter] Script Date: 03/08/2016 07:10:47 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create proc [dbo].[_KingDollar_CreateFULLCharacter]
@username varchar(24),
@Password varchar(50),
@CharName varchar (64),
@CharType varchar(8),
@CharGender varchar(6),
@town varchar(64),
@CharLevel tinyint,
@CharStr smallint,
@CharInt smallint,
@CharGold bigint,
@CharSP int,
@CharHP int,
@CharMP int,
@CharInv varchar(145),
@weaponName varchar(264),
@weaponType varchar(64),
@weaponDegree varchar(24),
@ArmorName varchar(264),
@ArmorType varchar(64),
@ArmorDegree varchar(24),
@AccountType varchar(25)
AS
SET NOCOUNT ON
--################################################## ###########################
--################################################## ###########################
--###############/* TROY ONLINE PROCEDURES -- KING DOLLAR -- */--##############
--################################################## ###########################
--################################################## ###########################
SELECT @AccountType = CASE WHEN @AccountType = 'GM' THEN '1' WHEN @AccountType = 'Player' THEN '3' END
IF NOT EXISTS (SELECT StrUserID FROM SRO_VT_ACCOUNT.dbo.TB_User WHERE StrUserID = @username)
BEGIN
INSERT INTO SRO_VT_ACCOUNT..TB_User (StrUserID,password,sec_content,sec_primary) values @username,LOWER(CONVERT(varchar(50),HASHBYTES('MD5',@Passwo rd), 2)),@AccountType,@AccountType)
END
ELSE IF EXISTS (SELECT StrUserID FROM SRO_VT_ACCOUNT.dbo.TB_User WHERE StrUserID = @username)
BEGIN
PRINT 'User already exists'
END
DECLARE @userJID INT
DECLARE @Slot INT
DECLARE @temp INT
DECLARE @NewCharID INT
SET @NewCharID = 0
SELECT @userJID = JID FROM SRO_VT_ACCOUNT..TB_User WHERE StrUserID = @username
/* DECLARING SOME SHITS */
DECLARE @CharScale tinyint
DECLARE @ArmorGender varchar(7)
DECLARE @RefCharID int
DECLARE @StartRegionID INT
DECLARE @StartPos_X real
DECLARE @StartPos_Y real
DECLARE @StartPos_Z real
/* SELECTING SOME SHITS */
SELECT @CharScale = CONVERT(int,34+(64-34)*RAND());
SELECT @RefCharID = CASE WHEN @CharType = 'Chinese' AND @CharGender = 'Male' THEN (SELECT CONVERT(int,1907+(1919-1907)*RAND())) WHEN @CharType = 'Chinese' AND @CharGender = 'Female' THEN (SELECT CONVERT(int,1920+(1932-1920)*RAND())) WHEN @CharType = 'Europe' AND @CharGender = 'Male' THEN (SELECT CONVERT(int,14875+(14887-14875)*RAND())) WHEN @CharType = 'Europe' AND @CharGender = 'Female' THEN (SELECT CONVERT(int,14888+(14900-14888)*RAND())) END
IF @town = 'Jangan')
BEGIN
SET @StartRegionID = '25000'
SET @StartPos_X = '995'
SET @StartPos_Y = '-32'
SET @StartPos_Z = '1132'
END
ELSE IF @town = 'Donwhang')
BEGIN
SET @StartRegionID = '26265'
SET @StartPos_X = '957'
SET @StartPos_Y = '-80'
SET @StartPos_Z = '1508'
END
ELSE IF @town = 'Hotan')
BEGIN
SET @StartRegionID = '23687'
SET @StartPos_X = '1138'
SET @StartPos_Y = '250'
SET @StartPos_Z = '153'
END
ELSE IF @town = 'SamarKand')
BEGIN
SET @StartRegionID = '27244'
SET @StartPos_X = '271'
SET @StartPos_Y = '180'
SET @StartPos_Z = '1438'
END
ELSE IF @town = 'Constantinople')
BEGIN
SET @StartRegionID = '26959'
SET @StartPos_X = '1030'
SET @StartPos_Y = '80'
SET @StartPos_Z = '512'
END
ELSE
BEGIN
SET @StartRegionID = '25000'
SET @StartPos_X = '995'
SET @StartPos_Y = '-32'
SET @StartPos_Z = '1132'
END
-----------------------------------------------------------------------------
-- 1. ij¸¯ÅÍ ½½·Ô ³Ñ¹ö°¡ validÇÑ °ÍÀÎÁö, ±×¸®°í ºó½½·ÔÀÌ ¸Â´ÂÁö ¸ÕÀú üũÇÑ´Ù.
-----------------------------------------------------------------------------
-- start by novice.
SELECT @temp = count(CharID) FROM SRO_VT_SHARD.dbo._User WITH (NOLOCK) WHERE UserJID = @userJID
IF @temp >= 4)
BEGIN
-- ³Ê¹« ¸¹ÀÚ³ª
RETURN -2
END
-- finish by novice.
-----------------------------------------------------------------------------
-- 2. ij¸¯ÅÍ Ãß°¡Çϱâ
-----------------------------------------------------------------------------
IF (@CharScale > 68) -- 0100 0100 --> 68 ÀÌ´Ù!
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ! ½ºÄÉÀÏ °ªÀÌ ÀÌ»óÇÏ´Ù!
RETURN -3
END
EXEC @temp = SRO_VT_SHARD.dbo._IsExistingCharName @CharName
IF @temp <> 0)
BEGIN
print 'Charname exist but account created succesfully,you can use proc of [_KingDollar_AddCharacter_ToAccount]'
-- ÀÌ¹Ì »ç¿ëÁßÀÎ À̸§À̶ó´Âµ¥?
RETURN -4
END
BEGIN TRANSACTION
-- Àδø½Ã½ºÅÛÀÌ Àû¿ëµÇ¸é¼* ¸¶Áö¸·¿¡ WorldID¿Í 1°ªÀ» ´õ ³Ö¾î ÁÖ¾ú´Ù!
INSERT INTO SRO_VT_SHARD.dbo._Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize,
LastLogout, CurLevel, MaxLevel, RemainGold , RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID)
VALUES (@RefCharID, @CharName, @CharScale, @CharStr, @CharInt, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, 0, @CharInv,
GetDate(), @CharLevel, @CharLevel, @CharGold, @CharSP, @CharHP,@CharMP, 1, 1, 1, 1)
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END
-- start by novice.
-- ÀÌÁ¦ Slot ¾È¾´´Ù.. ±×³É Insert ¸¸..
INSERT INTO SRO_VT_SHARD.._AccountJID values @username, @userJID,0)
INSERT INTO SRO_VT_SHARD.._User VALUES @userJID, @NewCharID)
-- finish by novice.
-----------------------------------------------------------------------------
-- 3-1. Àåºñ ½½·Ô ä¿ì±â
-- [Àκ¥Å丮 ½½·Ô 96°³] + [Àåºñ½½·Ô 13°³] <- Àκ¥Å丮 È®Àå ¼*ºñ½º ÈÄ 48°³¿¡¼* 96°³·Î Áõ°¡!!!(woos0)
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO SRO_VT_SHARD.._Inventory(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM SRO_VT_SHARD.._RefDummySlot with( nolock )
WHERE cnt < 109
IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -7
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-- µðÆúÆ®·Î ¼±ÅÃÇÑ ¾ÆÀÌÅÛÀ» ´Ù½Ã ³Ö¾îÁÖÀÚ...
/* ¿ä·± ¼ø¼*·Î Á¤ÀǵǾî ÀÖ´Ù.
0: EQUIP_SLOT_HELM
1: EQUIP_SLOT_MAIL,
2: EQUIP_SLOT_SHOULDERGUARD,
3: EQUIP_SLOT_GAUNTLET,
4: EQUIP_SLOT_PANTS,
5: EQUIP_SLOT_BOOTS,
6: EQUIP_SLOT_WEAPON,
7: EQUIP_SLOT_SHIELD or ARROW,
9: EQUIP_SLOT_EARRING,
10: EQUIP_SLOT_NECKLACE,
11: EQUIP_SLOT_L_RING,
12: EQUIP_SLOT_R_RING,
*/
/* SELECTING SHITS -- STARTED BY KINGDOLLAR */
-- BEGIN
SELECT @weaponType = CASE WHEN @weaponType = 'Normal' THEN + '_A' WHEN @weaponType = 'Sos' THEN + '_A_RARE' WHEN @weaponType = 'Moon' THEN + '_B_RARE' WHEN @weaponType = 'Sun' THEN + '_C_RARE' END
SELECT @ArmorName = CASE WHEN @ArmorName = 'Garment' THEN '_CLOTHES_' WHEN @ArmorName = 'Protector' THEN '_LIGHT_' WHEN @ArmorName = 'Armor' THEN '_HEAVY_' END
SELECT @ArmorType = CASE WHEN @ArmorType = 'Normal' THEN '_A' WHEN @ArmorType = 'Sos' THEN '_A_RARE' WHEN @ArmorType = 'Moon' THEN '_B_RARE' WHEN @ArmorType = 'Sun' THEN '_C_RARE' END
SELECT @ArmorGender = CASE WHEN @CharGender = 'Male' THEN '_M' WHEN @CharGender = 'Female' THEN '_W' END
-- END
/* DECLARING SHITS -- STARTED BY KINGDOLLAR */
-- BEGIN
DECLARE @weapon_Codename varchar(129)
DECLARE @Hat_Codename varchar(129)
DECLARE @Chest_Codename varchar(129)
DECLARE @Legs_Codename varchar(129)
DECLARE @Shoulder_Codename varchar(129)
DECLARE @Hand_Codename varchar(129)
DECLARE @Foot_Codename varchar(129)
DECLARE @Shield_Codename varchar(129)
DECLARE @Ring_Codename varchar(129)
DECLARE @Earring_Codename varchar(129)
DECLARE @Necklace_Codename varchar(129)
-- END
/* SELECTING SHITS PART 2 -- STARTED BY KINGDOLLAR */
-- BEGIN
IF (@RefCharID BETWEEN 1907 AND 1932)
BEGIN
SELECT @weapon_Codename = CASE WHEN @weaponName = 'Sword' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'Blade' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_BLADE_' @weaponDegree @weaponType) WHEN @weaponName = 'Glavie' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_TBLADE_' @weaponDegree @weaponType) WHEN @weaponName = 'Bow' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_BOW_' @weaponDegree @weaponType) WHEN @weaponName = 'Spear' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SPEAR_' @weaponDegree @weaponType) END
SELECT TOP 1 @Hat_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_H A'+@ArmorType
SELECT TOP 1 @Chest_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_B A'+@ArmorType
SELECT TOP 1 @Legs_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_L A'+@ArmorType
SELECT TOP 1 @Shoulder_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_S A'+@ArmorType
SELECT TOP 1 @Hand_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_A A'+@ArmorType
SELECT TOP 1 @Foot_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_F A'+@ArmorType
SELECT TOP 1 @Shield_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SHIELD_' @weaponDegree @weaponType
SELECT TOP 1 @Ring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_RING_' @weaponDegree @weaponType
SELECT TOP 1 @Earring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_EARRING_' @weaponDegree @weaponType
SELECT TOP 1 @Necklace_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_NECKLACE_' @weaponDegree @weaponType
END
ELSE IF (@RefCharID BETWEEN 14875 AND 14900)
BEGIN
SELECT @weapon_Codename = CASE WHEN @weaponName = 'Staff' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_TSTAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'TwoHandedSword' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_TSWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'OneHanded' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_SWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'Dagger' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_DAGGER_' @weaponDegree @weaponType) WHEN @weaponName = 'CrossBow' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_CROSSBOW_' @weaponDegree @weaponType) WHEN @weaponName = 'WarLock' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_DARKSTAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'Cleric' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_STAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'Harp' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_HARP_' @weaponDegree @weaponType) END
SELECT TOP 1 @Hat_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_H A'+@ArmorType
SELECT TOP 1 @Chest_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_B A'+@ArmorType
SELECT TOP 1 @Legs_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_L A'+@ArmorType
SELECT TOP 1 @Shoulder_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_S A'+@ArmorType
SELECT TOP 1 @Hand_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_A A'+@ArmorType
SELECT TOP 1 @Foot_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_F A'+@ArmorType
SELECT TOP 1 @Shield_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_SHIELD_' @weaponDegree @weaponType
SELECT TOP 1 @Ring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_RING_' @weaponDegree @weaponType
SELECT TOP 1 @Earring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_EARRING_' @weaponDegree @weaponType
SELECT TOP 1 @Necklace_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_NECKLACE_' @weaponDegree @weaponType
END
-- END
/* DECLARING SHITS PART 2 -- STARTED BY KINGDOLLAR */
-- BEGIN
DECLARE @weapon_ID bigint
DECLARE @weapon_Dur bigint
DECLARE @weapon_Shield_Status tinyint
DECLARE @Hat_ID bigint
DECLARE @Hat_Dur bigint
DECLARE @Chest_ID bigint
DECLARE @Chest_Dur bigint
DECLARE @Legs_ID bigint
DECLARE @Legs_Dur bigint
DECLARE @Shoulder_ID bigint
DECLARE @Shoulder_Dur bigint
DECLARE @Hand_ID bigint
DECLARE @Hand_Dur bigint
DECLARE @Foot_ID bigint
DECLARE @Foot_Dur bigint
DECLARE @Ring_ID bigint
DECLARE @Earring_ID bigint
DECLARE @Necklace_ID bigint
DECLARE @Shield_ID bigint
DECLARE @Shield_Dur bigint
-- END
/* SELECTING SHITS PART 3 -- STARTED BY KINGDOLLAR */
-- BEGIN
SELECT TOP 1 @weapon_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @weapon_Codename
SELECT TOP 1 @Shield_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Shield_Codename
SELECT TOP 1 @Hat_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Hat_Codename
SELECT TOP 1 @Chest_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Chest_Codename
SELECT TOP 1 @Legs_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Legs_Codename
SELECT TOP 1 @Shoulder_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Shoulder_Codename
SELECT TOP 1 @Hand_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Hand_Codename
SELECT TOP 1 @Foot_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Foot_Codename
SELECT TOP 1 @Ring_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Ring_Codename
SELECT TOP 1 @Earring_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Earring_Codename
SELECT TOP 1 @Necklace_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Necklace_Codename
SELECT TOP 1 @weapon_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @weapon_Codename
SELECT TOP 1 @Shield_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Shield_Codename
SELECT TOP 1 @Hat_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Hat_Codename
SELECT TOP 1 @Chest_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Chest_Codename
SELECT TOP 1 @Legs_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Legs_Codename
SELECT TOP 1 @Shoulder_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Shoulder_Codename
SELECT TOP 1 @Hand_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Hand_Codename
SELECT TOP 1 @Foot_Dur =It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Foot_Codename
SELECT TOP 1 @weapon_Shield_Status = It.TwoHanded FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @weapon_Codename
-- END
DECLARE @ItemID BIGINT
SET @ItemID = 0
-- »ó°©
IF (@Hat_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 0, @Hat_ID, @Hat_Dur --HAT
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Shoulder_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 2, @Shoulder_ID, @Shoulder_Dur --Shoulder
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Hand_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 3, @Hand_ID, @Hand_Dur --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Ring_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 11, @Ring_ID, 1 --Ring
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 12, @Ring_ID, 1 --Ring
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Earring_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 9, @Earring_ID, 1 --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Necklace_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 10, @Necklace_ID, 1 --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Chest_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 1, @Chest_ID, @Chest_Dur --Chest
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- ¹ÙÁö
IF (@Legs_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 4, @Legs_ID, @Legs_Dur --Legs
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF (@Foot_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 5, @Foot_ID, @Foot_Dur --Foot
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF @weapon_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 6, @weapon_ID, @weapon_Dur --Weapon
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
IF @weapon_Shield_Status = 0)
BEGIN
IF (@Shield_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 7, @Shield_ID, @Shield_Dur --Shield
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
END
-----------------------------------------------------------------------------
-- 3-2. ¾Æ¹ÙŸ Inventory ½½·Ô ä¿ì±â
-- [¾Æ¹ÙŸ Àκ¥Å丮 ½½·Ô 5°³]
-- APPLY_AVATAR_SYSTEMÀÌ Àû¿ëµÇ¸é¼* Ãß°¡µÇ´Â ºÎºÐ
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO SRO_VT_SHARD.._InventoryForAvatar(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM SRO_VT_SHARD.._RefDummySlot with( nolock )
WHERE cnt < 5
IF (@@ERROR <> 0)
BEGIN
-- ¾Æ¹ÙŸ Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -14
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-----------------------------------------------------------------------------
-- default skill³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
DECLARE @country tinyINT
EXEC @country = SRO_VT_SHARD.._GetObjCountry @RefCharID
INSERT INTO SRO_VT_SHARD.._CharSkillMastery (CharID, MasteryID, Level)
SELECT @NewCharID, MasteryID, 0
FROM SRO_VT_SHARD.._RefCharDefault_SkillMastery with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -15
END
INSERT INTO SRO_VT_SHARD.._CharSkill (CharID,SkillID,Enable)
SELECT @NewCharID, SkillID, 1
FROM SRO_VT_SHARD.._RefCharDefault_Skill with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -16
END
-----------------------------------------------------------------------------
-- ±âº» Äù½ºÆ® ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0
FROM SRO_VT_SHARD.._RefQuest
WHERE CodeName in (SELECT CodeName FROM SRO_VT_SHARD.._RefCharDefault_Quest with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and Service = 1)
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -17
END
-----------------------------------------------------------------------------
-- Static Avatar Initial Record ³Ö±â
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._StaticAvatar(CharID) values(@NewCharID)
IF (@@ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END
-----------------------------------------------------------------------------
-- Trijob ä¿ö³Ö±â!!!!!
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -19
END
-----------------------------------------------------------------------------
-- CharList¿¡ ID ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT SRO_VT_SHARD.._CharNameList VALUES(@CharName, @NewCharID)
/* inserting into chest */
-- BEGIN
DECLARE @Start tinyint = 0
DECLARE @End tinyint = 239
WHILE @Start < @End
BEGIN
SET @Start += 1
INSERT INTO SRO_VT_SHARD.._Chest (UserJID,Slot) VALUES @userJID,@Start)
END
exec SRO_VT_SHARD.._InsertToChestInfo
-- END
-- Quick Slot Á¤º¸ ÀúÀå¿ë!!!
exec SRO_VT_SHARD.dbo._AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION
print 'JID : '+CONVERT(varchar(25) @userJID)
print 'Username : ' @username
print 'Password : '+@Password
print 'CharID : '+CONVERT(varchar(25),@NewCharID)
print 'Charname : '+@CharName
print 'CharType : '+@CharType
print 'CharGender : '+@CharGender
print 'CharTown : ' @town
print 'CharScale : '+CONVERT(varchar(25),@CharScale)
print 'Charlevel : '+CONVERT(varchar(25),@CharLevel)
print 'Charstr : '+CONVERT(varchar(25),@CharStr)
print 'Charint : '+CONVERT(varchar(25),@CharInt)
print 'CharGold : '+CONVERT(varchar(25),@CharGold)
print 'CharSP : '+CONVERT(varchar(25),@CharSP)
print 'CharHP : '+CONVERT(varchar(25),@CharHP)
print 'CharMP : '+CONVERT(varchar(25),@CharMP)
print 'Char_InvSlot : '+CONVERT(varchar(25),@CharInv)
print 'Weapon_Name : ' @weaponName
print 'Weapon_Type : ' @weaponType
print 'Weapon_Degree : ' @weaponDegree
print 'Armor_Name : '+@ArmorName
print 'Armor_Type : '+@ArmorType
print 'Armor_Degree : '+@ArmorDegree
print 'character has been created successfully'
RETURN @NewCharID
DECLARE @username varchar(24) = 'player7' --username
DECLARE @Password varchar(50) = 'gm' --password
DECLARE @AccountType varchar(6) = 'Player' -- Available : Player , GM
DECLARE @Charname varchar(64) = 'Player7' --charname
DECLARE @CharType varchar(8) = 'Chinese' -- Available : Europe , Chinese
DECLARE @CharGender varchar(7) = 'Female' -- Available : Male , Female
DECLARE @town varchar(64) = 'Jangan' -- Available : Jangan , Donwhang , Hotan , SamarKand , Constantinople
DECLARE @CharLevel tinyint = '125' --charlevel
DECLARE @CharStr smallint = '395' --charstr
DECLARE @CharInt smallint = '395' --charint
DECLARE @Gold bigint = '9999999' --gold
DECLARE @SP int = '99999999' --sp
DECLARE @HP int = '200' --hp
DECLARE @MP int = '200' --mp
DECLARE @INVSlot int = '109' --inv slot
-- Weapon Available
/* Chinese Available : Sword , Blade , Spear , Blade , Glavie */
/* Europe Available : Staff , TwoHandedSword , OneHanded , Dagger , CrossBow , WarLock , Cleric , Harp */
DECLARE @weaponName varchar(129) = 'Sword'
DECLARE @weaponType varchar(129) = 'Sun' -- Available : Normal , Sos , Moon , Sun
DECLARE @weaponDegree varchar(129) = '13'
DECLARE @ArmorName varchar(129) = 'Armor' -- Available : Garment , Protector , Armor
DECLARE @ArmorType varchar(129) = 'Sun' -- Available : Normal , Sos , Moon , Sun
DECLARE @ArmorDegree varchar(129) = '13'
exec [_KingDollar_CreateFULLCharacter] @username,@Password,@Charname,@CharType,@CharGender @town,@CharLevel,@CharStr,@CharInt,@Gold,@SP,@HP,@MP,@I NVSlot @weaponName @weaponType @weaponDegree,@ArmorName,@ArmorType,@ArmorDegree,@Account Type
DECLARE @Password varchar(50) = 'gm' --password
DECLARE @AccountType varchar(6) = 'Player' -- Available : Player , GM
DECLARE @Charname varchar(64) = 'Player7' --charname
DECLARE @CharType varchar(8) = 'Chinese' -- Available : Europe , Chinese
DECLARE @CharGender varchar(7) = 'Female' -- Available : Male , Female
DECLARE @town varchar(64) = 'Jangan' -- Available : Jangan , Donwhang , Hotan , SamarKand , Constantinople
DECLARE @CharLevel tinyint = '125' --charlevel
DECLARE @CharStr smallint = '395' --charstr
DECLARE @CharInt smallint = '395' --charint
DECLARE @Gold bigint = '9999999' --gold
DECLARE @SP int = '99999999' --sp
DECLARE @HP int = '200' --hp
DECLARE @MP int = '200' --mp
DECLARE @INVSlot int = '109' --inv slot
-- Weapon Available
/* Chinese Available : Sword , Blade , Spear , Blade , Glavie */
/* Europe Available : Staff , TwoHandedSword , OneHanded , Dagger , CrossBow , WarLock , Cleric , Harp */
DECLARE @weaponName varchar(129) = 'Sword'
DECLARE @weaponType varchar(129) = 'Sun' -- Available : Normal , Sos , Moon , Sun
DECLARE @weaponDegree varchar(129) = '13'
DECLARE @ArmorName varchar(129) = 'Armor' -- Available : Garment , Protector , Armor
DECLARE @ArmorType varchar(129) = 'Sun' -- Available : Normal , Sos , Moon , Sun
DECLARE @ArmorDegree varchar(129) = '13'
exec [_KingDollar_CreateFULLCharacter] @username,@Password,@Charname,@CharType,@CharGender @town,@CharLevel,@CharStr,@CharInt,@Gold,@SP,@HP,@MP,@I NVSlot @weaponName @weaponType @weaponDegree,@ArmorName,@ArmorType,@ArmorDegree,@Account Type
[2] add a character to account username
USE [SRO_KINGDOLLAR_EVENT]
GO
/****** Object: StoredProcedure [dbo].[_KingDollar_AddCharacter_ToAccount] Script Date: 03/08/2016 07:21:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[_KingDollar_AddCharacter_ToAccount]
@username varchar(24),
@CharName varchar (64),
@CharType varchar(8),
@CharGender varchar(6),
@town varchar(64),
@CharLevel tinyint,
@CharStr int,
@CharInt int,
@CharGold int,
@CharSP int,
@CharHP int,
@CharMP int,
@CharInv varchar(145),
@weaponName varchar(264),
@weaponType varchar(64),
@weaponDegree varchar(24),
@ArmorName varchar(264),
@ArmorType varchar(64),
@ArmorDegree varchar(24)
AS
SET NOCOUNT ON
--################################################## ###########################
--################################################## ###########################
--###############/* TROY ONLINE PROCEDURES -- KING DOLLAR -- */--##############
--################################################## ###########################
--################################################## ###########################
DECLARE @userJID INT
IF NOT EXISTS (SELECT StrUserID FROM SRO_VT_ACCOUNT.dbo.TB_User WHERE StrUserID = @username)
BEGIN
PRINT 'Username is not exist'
END
ELSE IF EXISTS (SELECT StrUserID FROM SRO_VT_ACCOUNT.dbo.TB_User WHERE StrUserID = @username)
BEGIN
SELECT @userJID = JID FROM SRO_VT_ACCOUNT..TB_User WHERE StrUserID = @username
END
DECLARE @Slot INT
DECLARE @temp INT
DECLARE @NewCharID INT
SET @NewCharID = 0
SELECT @userJID = JID FROM SRO_VT_ACCOUNT..TB_User WHERE StrUserID = @username
/* DECLARING SOME SHITS */
DECLARE @CharScale tinyint
DECLARE @ArmorGender varchar(7)
DECLARE @RefCharID int
DECLARE @StartRegionID INT
DECLARE @StartPos_X real
DECLARE @StartPos_Y real
DECLARE @StartPos_Z real
/* SELECTING SOME SHITS */
SELECT @CharScale = CONVERT(int,34+(64-34)*RAND());
SELECT @RefCharID = CASE WHEN @CharType = 'Chinese' AND @CharGender = 'Male' THEN (SELECT CONVERT(int,1907+(1919-1907)*RAND())) WHEN @CharType = 'Chinese' AND @CharGender = 'Female' THEN (SELECT CONVERT(int,1920+(1932-1920)*RAND())) WHEN @CharType = 'Europe' AND @CharGender = 'Male' THEN (SELECT CONVERT(int,14875+(14887-14875)*RAND())) WHEN @CharType = 'Europe' AND @CharGender = 'Female' THEN (SELECT CONVERT(int,14888+(14900-14888)*RAND())) END
IF @town = 'Jangan')
BEGIN
SET @StartRegionID = '25000'
SET @StartPos_X = '995'
SET @StartPos_Y = '-32'
SET @StartPos_Z = '1132'
END
ELSE IF @town = 'Donwhang')
BEGIN
SET @StartRegionID = '26265'
SET @StartPos_X = '957'
SET @StartPos_Y = '-80'
SET @StartPos_Z = '1508'
END
ELSE IF @town = 'Hotan')
BEGIN
SET @StartRegionID = '23687'
SET @StartPos_X = '1138'
SET @StartPos_Y = '250'
SET @StartPos_Z = '153'
END
ELSE IF @town = 'SamarKand')
BEGIN
SET @StartRegionID = '27244'
SET @StartPos_X = '271'
SET @StartPos_Y = '180'
SET @StartPos_Z = '1438'
END
ELSE IF @town = 'Constantinople')
BEGIN
SET @StartRegionID = '26959'
SET @StartPos_X = '1030'
SET @StartPos_Y = '80'
SET @StartPos_Z = '512'
END
ELSE
BEGIN
SET @StartRegionID = '25000'
SET @StartPos_X = '995'
SET @StartPos_Y = '-32'
SET @StartPos_Z = '1132'
END
-----------------------------------------------------------------------------
-- 1. ij¸¯ÅÍ ½½·Ô ³Ñ¹ö°¡ validÇÑ °ÍÀÎÁö, ±×¸®°í ºó½½·ÔÀÌ ¸Â´ÂÁö ¸ÕÀú üũÇÑ´Ù.
-----------------------------------------------------------------------------
-- start by novice.
SELECT @temp = count(CharID) FROM SRO_VT_SHARD.dbo._User WITH (NOLOCK) WHERE UserJID = @userJID
IF @temp >= 4)
BEGIN
-- ³Ê¹« ¸¹ÀÚ³ª
RETURN -2
END
-- finish by novice.
-----------------------------------------------------------------------------
-- 2. ij¸¯ÅÍ Ãß°¡Çϱâ
-----------------------------------------------------------------------------
IF (@CharScale > 68) -- 0100 0100 --> 68 ÀÌ´Ù!
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ! ½ºÄÉÀÏ °ªÀÌ ÀÌ»óÇÏ´Ù!
RETURN -3
END
EXEC @temp = SRO_VT_SHARD.dbo._IsExistingCharName @CharName
IF @temp <> 0)
BEGIN
print 'Charname exist but account created succesfully,you can use proc of [_KingDollar_AddCharacter_ToAccount]'
-- ÀÌ¹Ì »ç¿ëÁßÀÎ À̸§À̶ó´Âµ¥?
RETURN -4
END
BEGIN TRANSACTION
-- Àδø½Ã½ºÅÛÀÌ Àû¿ëµÇ¸é¼* ¸¶Áö¸·¿¡ WorldID¿Í 1°ªÀ» ´õ ³Ö¾î ÁÖ¾ú´Ù!
INSERT INTO SRO_VT_SHARD.dbo._Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize,
LastLogout, CurLevel, MaxLevel, RemainGold , RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID)
VALUES (@RefCharID, @CharName, @CharScale, @CharStr, @CharInt, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, 0, @CharInv,
GetDate(), @CharLevel, @CharLevel, @CharGold, @CharSP, @CharHP,@CharMP, 1, 1, 1, 1)
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END
-- start by novice.
-- ÀÌÁ¦ Slot ¾È¾´´Ù.. ±×³É Insert ¸¸..
INSERT INTO SRO_VT_SHARD.._AccountJID values @username, @userJID,0)
INSERT INTO SRO_VT_SHARD.._User VALUES @userJID, @NewCharID)
-- finish by novice.
-----------------------------------------------------------------------------
-- 3-1. Àåºñ ½½·Ô ä¿ì±â
-- [Àκ¥Å丮 ½½·Ô 96°³] + [Àåºñ½½·Ô 13°³] <- Àκ¥Å丮 È®Àå ¼*ºñ½º ÈÄ 48°³¿¡¼* 96°³·Î Áõ°¡!!!(woos0)
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO SRO_VT_SHARD.._Inventory(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM SRO_VT_SHARD.._RefDummySlot with( nolock )
WHERE cnt < 109
IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -7
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-- µðÆúÆ®·Î ¼±ÅÃÇÑ ¾ÆÀÌÅÛÀ» ´Ù½Ã ³Ö¾îÁÖÀÚ...
/* ¿ä·± ¼ø¼*·Î Á¤ÀǵǾî ÀÖ´Ù.
0: EQUIP_SLOT_HELM
1: EQUIP_SLOT_MAIL,
2: EQUIP_SLOT_SHOULDERGUARD,
3: EQUIP_SLOT_GAUNTLET,
4: EQUIP_SLOT_PANTS,
5: EQUIP_SLOT_BOOTS,
6: EQUIP_SLOT_WEAPON,
7: EQUIP_SLOT_SHIELD or ARROW,
9: EQUIP_SLOT_EARRING,
10: EQUIP_SLOT_NECKLACE,
11: EQUIP_SLOT_L_RING,
12: EQUIP_SLOT_R_RING,
*/
/* SELECTING SHITS -- STARTED BY KINGDOLLAR */
-- BEGIN
SELECT @weaponType = CASE WHEN @weaponType = 'Normal' THEN + '_A' WHEN @weaponType = 'Sos' THEN + '_A_RARE' WHEN @weaponType = 'Moon' THEN + '_B_RARE' WHEN @weaponType = 'Sun' THEN + '_C_RARE' END
SELECT @ArmorName = CASE WHEN @ArmorName = 'Garment' THEN '_CLOTHES_' WHEN @ArmorName = 'Protector' THEN '_LIGHT_' WHEN @ArmorName = 'Armor' THEN '_HEAVY_' END
SELECT @ArmorType = CASE WHEN @ArmorType = 'Normal' THEN '_A' WHEN @ArmorType = 'Sos' THEN '_A_RARE' WHEN @ArmorType = 'Moon' THEN '_B_RARE' WHEN @ArmorType = 'Sun' THEN '_C_RARE' END
SELECT @ArmorGender = CASE WHEN @CharGender = 'Male' THEN '_M' WHEN @CharGender = 'Female' THEN '_W' END
-- END
/* DECLARING SHITS -- STARTED BY KINGDOLLAR */
-- BEGIN
DECLARE @weapon_Codename varchar(129)
DECLARE @Hat_Codename varchar(129)
DECLARE @Chest_Codename varchar(129)
DECLARE @Legs_Codename varchar(129)
DECLARE @Shoulder_Codename varchar(129)
DECLARE @Hand_Codename varchar(129)
DECLARE @Foot_Codename varchar(129)
DECLARE @Shield_Codename varchar(129)
DECLARE @Ring_Codename varchar(129)
DECLARE @Earring_Codename varchar(129)
DECLARE @Necklace_Codename varchar(129)
-- END
/* SELECTING SHITS PART 2 -- STARTED BY KINGDOLLAR */
-- BEGIN
IF (@RefCharID BETWEEN 1907 AND 1932)
BEGIN
SELECT @weapon_Codename = CASE WHEN @weaponName = 'Sword' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'Blade' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_BLADE_' @weaponDegree @weaponType) WHEN @weaponName = 'Glavie' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_TBLADE_' @weaponDegree @weaponType) WHEN @weaponName = 'Bow' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_BOW_' @weaponDegree @weaponType) WHEN @weaponName = 'Spear' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SPEAR_' @weaponDegree @weaponType) END
SELECT TOP 1 @Hat_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_H A'+@ArmorType
SELECT TOP 1 @Chest_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_B A'+@ArmorType
SELECT TOP 1 @Legs_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_L A'+@ArmorType
SELECT TOP 1 @Shoulder_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_S A'+@ArmorType
SELECT TOP 1 @Hand_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_A A'+@ArmorType
SELECT TOP 1 @Foot_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_F A'+@ArmorType
SELECT TOP 1 @Shield_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SHIELD_' @weaponDegree @weaponType
SELECT TOP 1 @Ring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_RING_' @weaponDegree @weaponType
SELECT TOP 1 @Earring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_EARRING_' @weaponDegree @weaponType
SELECT TOP 1 @Necklace_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_NECKLACE_' @weaponDegree @weaponType
END
ELSE IF (@RefCharID BETWEEN 14875 AND 14900)
BEGIN
SELECT @weapon_Codename = CASE WHEN @weaponName = 'Staff' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_TSTAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'TwoHandedSword' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_TSWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'OneHanded' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_SWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'Dagger' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_DAGGER_' @weaponDegree @weaponType) WHEN @weaponName = 'CrossBow' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_CROSSBOW_' @weaponDegree @weaponType) WHEN @weaponName = 'WarLock' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_DARKSTAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'Cleric' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_STAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'Harp' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_HARP_' @weaponDegree @weaponType) END
SELECT TOP 1 @Hat_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_H A'+@ArmorType
SELECT TOP 1 @Chest_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_B A'+@ArmorType
SELECT TOP 1 @Legs_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_L A'+@ArmorType
SELECT TOP 1 @Shoulder_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_S A'+@ArmorType
SELECT TOP 1 @Hand_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_A A'+@ArmorType
SELECT TOP 1 @Foot_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_F A'+@ArmorType
SELECT TOP 1 @Shield_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_SHIELD_' @weaponDegree @weaponType
SELECT TOP 1 @Ring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_RING_' @weaponDegree @weaponType
SELECT TOP 1 @Earring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_EARRING_' @weaponDegree @weaponType
SELECT TOP 1 @Necklace_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_NECKLACE_' @weaponDegree @weaponType
END
-- END
/* DECLARING SHITS PART 2 -- STARTED BY KINGDOLLAR */
-- BEGIN
DECLARE @weapon_ID bigint
DECLARE @weapon_Dur bigint
DECLARE @weapon_Shield_Status tinyint
DECLARE @Hat_ID bigint
DECLARE @Hat_Dur bigint
DECLARE @Chest_ID bigint
DECLARE @Chest_Dur bigint
DECLARE @Legs_ID bigint
DECLARE @Legs_Dur bigint
DECLARE @Shoulder_ID bigint
DECLARE @Shoulder_Dur bigint
DECLARE @Hand_ID bigint
DECLARE @Hand_Dur bigint
DECLARE @Foot_ID bigint
DECLARE @Foot_Dur bigint
DECLARE @Ring_ID bigint
DECLARE @Earring_ID bigint
DECLARE @Necklace_ID bigint
DECLARE @Shield_ID bigint
DECLARE @Shield_Dur bigint
-- END
/* SELECTING SHITS PART 3 -- STARTED BY KINGDOLLAR */
-- BEGIN
SELECT TOP 1 @weapon_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @weapon_Codename
SELECT TOP 1 @Shield_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Shield_Codename
SELECT TOP 1 @Hat_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Hat_Codename
SELECT TOP 1 @Chest_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Chest_Codename
SELECT TOP 1 @Legs_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Legs_Codename
SELECT TOP 1 @Shoulder_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Shoulder_Codename
SELECT TOP 1 @Hand_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Hand_Codename
SELECT TOP 1 @Foot_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Foot_Codename
SELECT TOP 1 @Ring_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Ring_Codename
SELECT TOP 1 @Earring_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Earring_Codename
SELECT TOP 1 @Necklace_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Necklace_Codename
SELECT TOP 1 @weapon_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @weapon_Codename
SELECT TOP 1 @Shield_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Shield_Codename
SELECT TOP 1 @Hat_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Hat_Codename
SELECT TOP 1 @Chest_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Chest_Codename
SELECT TOP 1 @Legs_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Legs_Codename
SELECT TOP 1 @Shoulder_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Shoulder_Codename
SELECT TOP 1 @Hand_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Hand_Codename
SELECT TOP 1 @Foot_Dur =It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Foot_Codename
SELECT TOP 1 @weapon_Shield_Status = It.TwoHanded FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @weapon_Codename
-- END
DECLARE @ItemID BIGINT
SET @ItemID = 0
-- »ó°©
IF (@Hat_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 0, @Hat_ID, @Hat_Dur --HAT
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Shoulder_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 2, @Shoulder_ID, @Shoulder_Dur --Shoulder
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Hand_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 3, @Hand_ID, @Hand_Dur --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Ring_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 11, @Ring_ID, 1 --Ring
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 12, @Ring_ID, 1 --Ring
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Earring_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 9, @Earring_ID, 1 --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Necklace_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 10, @Necklace_ID, 1 --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Chest_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 1, @Chest_ID, @Chest_Dur --Chest
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- ¹ÙÁö
IF (@Legs_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 4, @Legs_ID, @Legs_Dur --Legs
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF (@Foot_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 5, @Foot_ID, @Foot_Dur --Foot
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF @weapon_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 6, @weapon_ID, @weapon_Dur --Weapon
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
IF @weapon_Shield_Status = 0)
BEGIN
IF (@Shield_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 7, @Shield_ID, @Shield_Dur --Shield
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
END
-----------------------------------------------------------------------------
-- 3-2. ¾Æ¹ÙŸ Inventory ½½·Ô ä¿ì±â
-- [¾Æ¹ÙŸ Àκ¥Å丮 ½½·Ô 5°³]
-- APPLY_AVATAR_SYSTEMÀÌ Àû¿ëµÇ¸é¼* Ãß°¡µÇ´Â ºÎºÐ
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO SRO_VT_SHARD.._InventoryForAvatar(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM SRO_VT_SHARD.._RefDummySlot with( nolock )
WHERE cnt < 5
IF (@@ERROR <> 0)
BEGIN
-- ¾Æ¹ÙŸ Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -14
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-----------------------------------------------------------------------------
-- default skill³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
DECLARE @country tinyINT
EXEC @country = SRO_VT_SHARD.._GetObjCountry @RefCharID
INSERT INTO SRO_VT_SHARD.._CharSkillMastery (CharID, MasteryID, Level)
SELECT @NewCharID, MasteryID, 0
FROM SRO_VT_SHARD.._RefCharDefault_SkillMastery with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -15
END
INSERT INTO SRO_VT_SHARD.._CharSkill (CharID,SkillID,Enable)
SELECT @NewCharID, SkillID, 1
FROM SRO_VT_SHARD.._RefCharDefault_Skill with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -16
END
-----------------------------------------------------------------------------
-- ±âº» Äù½ºÆ® ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0
FROM SRO_VT_SHARD.._RefQuest
WHERE CodeName in (SELECT CodeName FROM SRO_VT_SHARD.._RefCharDefault_Quest with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and Service = 1)
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -17
END
-----------------------------------------------------------------------------
-- Static Avatar Initial Record ³Ö±â
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._StaticAvatar(CharID) values(@NewCharID)
IF (@@ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END
-----------------------------------------------------------------------------
-- Trijob ä¿ö³Ö±â!!!!!
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -19
END
-----------------------------------------------------------------------------
-- CharList¿¡ ID ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT SRO_VT_SHARD.._CharNameList VALUES(@CharName, @NewCharID)
/* inserting into chest */
-- BEGIN
DECLARE @Start tinyint = 0
DECLARE @End tinyint = 239
WHILE @Start < @End
BEGIN
SET @Start += 1
INSERT INTO SRO_VT_SHARD.._Chest (UserJID,Slot) VALUES @userJID,@Start)
END
exec SRO_VT_SHARD.._InsertToChestInfo
-- END
-- Quick Slot Á¤º¸ ÀúÀå¿ë!!!
exec SRO_VT_SHARD.dbo._AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION
print 'JID : '+CONVERT(varchar(25) @userJID)
print 'Username : ' @username
print 'CharID : '+CONVERT(varchar(25),@NewCharID)
print 'Charname : '+@CharName
print 'CharType : '+@CharType
print 'CharGender : '+@CharGender
print 'CharTown : ' @town
print 'CharScale : '+CONVERT(varchar(25),@CharScale)
print 'Charlevel : '+CONVERT(varchar(25),@CharLevel)
print 'Charstr : '+CONVERT(varchar(25),@CharStr)
print 'Charint : '+CONVERT(varchar(25),@CharInt)
print 'CharGold : '+CONVERT(varchar(25),@CharGold)
print 'CharSP : '+CONVERT(varchar(25),@CharSP)
print 'CharHP : '+CONVERT(varchar(25),@CharHP)
print 'CharMP : '+CONVERT(varchar(25),@CharMP)
print 'Char_InvSlot : '+CONVERT(varchar(25),@CharInv)
print 'Weapon_Name : ' @weaponName
print 'Weapon_Type : ' @weaponType
print 'Weapon_Degree : ' @weaponDegree
print 'Armor_Name : '+@ArmorName
print 'Armor_Type : '+@ArmorType
print 'Armor_Degree : '+@ArmorDegree
print 'character has been created successfully'
RETURN @NewCharID
GO
/****** Object: StoredProcedure [dbo].[_KingDollar_AddCharacter_ToAccount] Script Date: 03/08/2016 07:21:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[_KingDollar_AddCharacter_ToAccount]
@username varchar(24),
@CharName varchar (64),
@CharType varchar(8),
@CharGender varchar(6),
@town varchar(64),
@CharLevel tinyint,
@CharStr int,
@CharInt int,
@CharGold int,
@CharSP int,
@CharHP int,
@CharMP int,
@CharInv varchar(145),
@weaponName varchar(264),
@weaponType varchar(64),
@weaponDegree varchar(24),
@ArmorName varchar(264),
@ArmorType varchar(64),
@ArmorDegree varchar(24)
AS
SET NOCOUNT ON
--################################################## ###########################
--################################################## ###########################
--###############/* TROY ONLINE PROCEDURES -- KING DOLLAR -- */--##############
--################################################## ###########################
--################################################## ###########################
DECLARE @userJID INT
IF NOT EXISTS (SELECT StrUserID FROM SRO_VT_ACCOUNT.dbo.TB_User WHERE StrUserID = @username)
BEGIN
PRINT 'Username is not exist'
END
ELSE IF EXISTS (SELECT StrUserID FROM SRO_VT_ACCOUNT.dbo.TB_User WHERE StrUserID = @username)
BEGIN
SELECT @userJID = JID FROM SRO_VT_ACCOUNT..TB_User WHERE StrUserID = @username
END
DECLARE @Slot INT
DECLARE @temp INT
DECLARE @NewCharID INT
SET @NewCharID = 0
SELECT @userJID = JID FROM SRO_VT_ACCOUNT..TB_User WHERE StrUserID = @username
/* DECLARING SOME SHITS */
DECLARE @CharScale tinyint
DECLARE @ArmorGender varchar(7)
DECLARE @RefCharID int
DECLARE @StartRegionID INT
DECLARE @StartPos_X real
DECLARE @StartPos_Y real
DECLARE @StartPos_Z real
/* SELECTING SOME SHITS */
SELECT @CharScale = CONVERT(int,34+(64-34)*RAND());
SELECT @RefCharID = CASE WHEN @CharType = 'Chinese' AND @CharGender = 'Male' THEN (SELECT CONVERT(int,1907+(1919-1907)*RAND())) WHEN @CharType = 'Chinese' AND @CharGender = 'Female' THEN (SELECT CONVERT(int,1920+(1932-1920)*RAND())) WHEN @CharType = 'Europe' AND @CharGender = 'Male' THEN (SELECT CONVERT(int,14875+(14887-14875)*RAND())) WHEN @CharType = 'Europe' AND @CharGender = 'Female' THEN (SELECT CONVERT(int,14888+(14900-14888)*RAND())) END
IF @town = 'Jangan')
BEGIN
SET @StartRegionID = '25000'
SET @StartPos_X = '995'
SET @StartPos_Y = '-32'
SET @StartPos_Z = '1132'
END
ELSE IF @town = 'Donwhang')
BEGIN
SET @StartRegionID = '26265'
SET @StartPos_X = '957'
SET @StartPos_Y = '-80'
SET @StartPos_Z = '1508'
END
ELSE IF @town = 'Hotan')
BEGIN
SET @StartRegionID = '23687'
SET @StartPos_X = '1138'
SET @StartPos_Y = '250'
SET @StartPos_Z = '153'
END
ELSE IF @town = 'SamarKand')
BEGIN
SET @StartRegionID = '27244'
SET @StartPos_X = '271'
SET @StartPos_Y = '180'
SET @StartPos_Z = '1438'
END
ELSE IF @town = 'Constantinople')
BEGIN
SET @StartRegionID = '26959'
SET @StartPos_X = '1030'
SET @StartPos_Y = '80'
SET @StartPos_Z = '512'
END
ELSE
BEGIN
SET @StartRegionID = '25000'
SET @StartPos_X = '995'
SET @StartPos_Y = '-32'
SET @StartPos_Z = '1132'
END
-----------------------------------------------------------------------------
-- 1. ij¸¯ÅÍ ½½·Ô ³Ñ¹ö°¡ validÇÑ °ÍÀÎÁö, ±×¸®°í ºó½½·ÔÀÌ ¸Â´ÂÁö ¸ÕÀú üũÇÑ´Ù.
-----------------------------------------------------------------------------
-- start by novice.
SELECT @temp = count(CharID) FROM SRO_VT_SHARD.dbo._User WITH (NOLOCK) WHERE UserJID = @userJID
IF @temp >= 4)
BEGIN
-- ³Ê¹« ¸¹ÀÚ³ª
RETURN -2
END
-- finish by novice.
-----------------------------------------------------------------------------
-- 2. ij¸¯ÅÍ Ãß°¡Çϱâ
-----------------------------------------------------------------------------
IF (@CharScale > 68) -- 0100 0100 --> 68 ÀÌ´Ù!
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ! ½ºÄÉÀÏ °ªÀÌ ÀÌ»óÇÏ´Ù!
RETURN -3
END
EXEC @temp = SRO_VT_SHARD.dbo._IsExistingCharName @CharName
IF @temp <> 0)
BEGIN
print 'Charname exist but account created succesfully,you can use proc of [_KingDollar_AddCharacter_ToAccount]'
-- ÀÌ¹Ì »ç¿ëÁßÀÎ À̸§À̶ó´Âµ¥?
RETURN -4
END
BEGIN TRANSACTION
-- Àδø½Ã½ºÅÛÀÌ Àû¿ëµÇ¸é¼* ¸¶Áö¸·¿¡ WorldID¿Í 1°ªÀ» ´õ ³Ö¾î ÁÖ¾ú´Ù!
INSERT INTO SRO_VT_SHARD.dbo._Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize,
LastLogout, CurLevel, MaxLevel, RemainGold , RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID)
VALUES (@RefCharID, @CharName, @CharScale, @CharStr, @CharInt, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, 0, @CharInv,
GetDate(), @CharLevel, @CharLevel, @CharGold, @CharSP, @CharHP,@CharMP, 1, 1, 1, 1)
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END
-- start by novice.
-- ÀÌÁ¦ Slot ¾È¾´´Ù.. ±×³É Insert ¸¸..
INSERT INTO SRO_VT_SHARD.._AccountJID values @username, @userJID,0)
INSERT INTO SRO_VT_SHARD.._User VALUES @userJID, @NewCharID)
-- finish by novice.
-----------------------------------------------------------------------------
-- 3-1. Àåºñ ½½·Ô ä¿ì±â
-- [Àκ¥Å丮 ½½·Ô 96°³] + [Àåºñ½½·Ô 13°³] <- Àκ¥Å丮 È®Àå ¼*ºñ½º ÈÄ 48°³¿¡¼* 96°³·Î Áõ°¡!!!(woos0)
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO SRO_VT_SHARD.._Inventory(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM SRO_VT_SHARD.._RefDummySlot with( nolock )
WHERE cnt < 109
IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -7
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-- µðÆúÆ®·Î ¼±ÅÃÇÑ ¾ÆÀÌÅÛÀ» ´Ù½Ã ³Ö¾îÁÖÀÚ...
/* ¿ä·± ¼ø¼*·Î Á¤ÀǵǾî ÀÖ´Ù.
0: EQUIP_SLOT_HELM
1: EQUIP_SLOT_MAIL,
2: EQUIP_SLOT_SHOULDERGUARD,
3: EQUIP_SLOT_GAUNTLET,
4: EQUIP_SLOT_PANTS,
5: EQUIP_SLOT_BOOTS,
6: EQUIP_SLOT_WEAPON,
7: EQUIP_SLOT_SHIELD or ARROW,
9: EQUIP_SLOT_EARRING,
10: EQUIP_SLOT_NECKLACE,
11: EQUIP_SLOT_L_RING,
12: EQUIP_SLOT_R_RING,
*/
/* SELECTING SHITS -- STARTED BY KINGDOLLAR */
-- BEGIN
SELECT @weaponType = CASE WHEN @weaponType = 'Normal' THEN + '_A' WHEN @weaponType = 'Sos' THEN + '_A_RARE' WHEN @weaponType = 'Moon' THEN + '_B_RARE' WHEN @weaponType = 'Sun' THEN + '_C_RARE' END
SELECT @ArmorName = CASE WHEN @ArmorName = 'Garment' THEN '_CLOTHES_' WHEN @ArmorName = 'Protector' THEN '_LIGHT_' WHEN @ArmorName = 'Armor' THEN '_HEAVY_' END
SELECT @ArmorType = CASE WHEN @ArmorType = 'Normal' THEN '_A' WHEN @ArmorType = 'Sos' THEN '_A_RARE' WHEN @ArmorType = 'Moon' THEN '_B_RARE' WHEN @ArmorType = 'Sun' THEN '_C_RARE' END
SELECT @ArmorGender = CASE WHEN @CharGender = 'Male' THEN '_M' WHEN @CharGender = 'Female' THEN '_W' END
-- END
/* DECLARING SHITS -- STARTED BY KINGDOLLAR */
-- BEGIN
DECLARE @weapon_Codename varchar(129)
DECLARE @Hat_Codename varchar(129)
DECLARE @Chest_Codename varchar(129)
DECLARE @Legs_Codename varchar(129)
DECLARE @Shoulder_Codename varchar(129)
DECLARE @Hand_Codename varchar(129)
DECLARE @Foot_Codename varchar(129)
DECLARE @Shield_Codename varchar(129)
DECLARE @Ring_Codename varchar(129)
DECLARE @Earring_Codename varchar(129)
DECLARE @Necklace_Codename varchar(129)
-- END
/* SELECTING SHITS PART 2 -- STARTED BY KINGDOLLAR */
-- BEGIN
IF (@RefCharID BETWEEN 1907 AND 1932)
BEGIN
SELECT @weapon_Codename = CASE WHEN @weaponName = 'Sword' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'Blade' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_BLADE_' @weaponDegree @weaponType) WHEN @weaponName = 'Glavie' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_TBLADE_' @weaponDegree @weaponType) WHEN @weaponName = 'Bow' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_BOW_' @weaponDegree @weaponType) WHEN @weaponName = 'Spear' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SPEAR_' @weaponDegree @weaponType) END
SELECT TOP 1 @Hat_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_H A'+@ArmorType
SELECT TOP 1 @Chest_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_B A'+@ArmorType
SELECT TOP 1 @Legs_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_L A'+@ArmorType
SELECT TOP 1 @Shoulder_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_S A'+@ArmorType
SELECT TOP 1 @Hand_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_A A'+@ArmorType
SELECT TOP 1 @Foot_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH'+@ArmorGender+@ArmorName+@ArmorDegree+'_F A'+@ArmorType
SELECT TOP 1 @Shield_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_SHIELD_' @weaponDegree @weaponType
SELECT TOP 1 @Ring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_RING_' @weaponDegree @weaponType
SELECT TOP 1 @Earring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_EARRING_' @weaponDegree @weaponType
SELECT TOP 1 @Necklace_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_CH_NECKLACE_' @weaponDegree @weaponType
END
ELSE IF (@RefCharID BETWEEN 14875 AND 14900)
BEGIN
SELECT @weapon_Codename = CASE WHEN @weaponName = 'Staff' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_TSTAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'TwoHandedSword' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_TSWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'OneHanded' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_SWORD_' @weaponDegree @weaponType) WHEN @weaponName = 'Dagger' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_DAGGER_' @weaponDegree @weaponType) WHEN @weaponName = 'CrossBow' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_CROSSBOW_' @weaponDegree @weaponType) WHEN @weaponName = 'WarLock' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_DARKSTAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'Cleric' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_STAFF_' @weaponDegree @weaponType) WHEN @weaponName = 'Harp' THEN (SELECT TOP 1 CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_HARP_' @weaponDegree @weaponType) END
SELECT TOP 1 @Hat_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_H A'+@ArmorType
SELECT TOP 1 @Chest_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_B A'+@ArmorType
SELECT TOP 1 @Legs_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_L A'+@ArmorType
SELECT TOP 1 @Shoulder_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_S A'+@ArmorType
SELECT TOP 1 @Hand_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_A A'+@ArmorType
SELECT TOP 1 @Foot_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU'+@ArmorGender+@ArmorName+@ArmorDegree+'_F A'+@ArmorType
SELECT TOP 1 @Shield_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_SHIELD_' @weaponDegree @weaponType
SELECT TOP 1 @Ring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_RING_' @weaponDegree @weaponType
SELECT TOP 1 @Earring_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_EARRING_' @weaponDegree @weaponType
SELECT TOP 1 @Necklace_Codename = CodeName128 FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = 'ITEM_EU_NECKLACE_' @weaponDegree @weaponType
END
-- END
/* DECLARING SHITS PART 2 -- STARTED BY KINGDOLLAR */
-- BEGIN
DECLARE @weapon_ID bigint
DECLARE @weapon_Dur bigint
DECLARE @weapon_Shield_Status tinyint
DECLARE @Hat_ID bigint
DECLARE @Hat_Dur bigint
DECLARE @Chest_ID bigint
DECLARE @Chest_Dur bigint
DECLARE @Legs_ID bigint
DECLARE @Legs_Dur bigint
DECLARE @Shoulder_ID bigint
DECLARE @Shoulder_Dur bigint
DECLARE @Hand_ID bigint
DECLARE @Hand_Dur bigint
DECLARE @Foot_ID bigint
DECLARE @Foot_Dur bigint
DECLARE @Ring_ID bigint
DECLARE @Earring_ID bigint
DECLARE @Necklace_ID bigint
DECLARE @Shield_ID bigint
DECLARE @Shield_Dur bigint
-- END
/* SELECTING SHITS PART 3 -- STARTED BY KINGDOLLAR */
-- BEGIN
SELECT TOP 1 @weapon_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @weapon_Codename
SELECT TOP 1 @Shield_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Shield_Codename
SELECT TOP 1 @Hat_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Hat_Codename
SELECT TOP 1 @Chest_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Chest_Codename
SELECT TOP 1 @Legs_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Legs_Codename
SELECT TOP 1 @Shoulder_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Shoulder_Codename
SELECT TOP 1 @Hand_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Hand_Codename
SELECT TOP 1 @Foot_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Foot_Codename
SELECT TOP 1 @Ring_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Ring_Codename
SELECT TOP 1 @Earring_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Earring_Codename
SELECT TOP 1 @Necklace_ID = ID FROM SRO_VT_SHARD.dbo._RefObjCommon WHERE CodeName128 = @Necklace_Codename
SELECT TOP 1 @weapon_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @weapon_Codename
SELECT TOP 1 @Shield_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Shield_Codename
SELECT TOP 1 @Hat_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Hat_Codename
SELECT TOP 1 @Chest_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Chest_Codename
SELECT TOP 1 @Legs_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Legs_Codename
SELECT TOP 1 @Shoulder_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Shoulder_Codename
SELECT TOP 1 @Hand_Dur = It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Hand_Codename
SELECT TOP 1 @Foot_Dur =It.Dur_U FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @Foot_Codename
SELECT TOP 1 @weapon_Shield_Status = It.TwoHanded FROM SRO_VT_SHARD.dbo._RefObjItem as It inner join SRO_VT_SHARD.dbo._RefObjCommon as RFC on RFC.Link = It.ID WHERE RFC.CodeName128 = @weapon_Codename
-- END
DECLARE @ItemID BIGINT
SET @ItemID = 0
-- »ó°©
IF (@Hat_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 0, @Hat_ID, @Hat_Dur --HAT
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Shoulder_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 2, @Shoulder_ID, @Shoulder_Dur --Shoulder
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Hand_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 3, @Hand_ID, @Hand_Dur --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Ring_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 11, @Ring_ID, 1 --Ring
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 12, @Ring_ID, 1 --Ring
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Earring_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 9, @Earring_ID, 1 --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Necklace_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 10, @Necklace_ID, 1 --Hand
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- »ó°©
IF (@Chest_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 1, @Chest_ID, @Chest_Dur --Chest
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- ¹ÙÁö
IF (@Legs_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 4, @Legs_ID, @Legs_Dur --Legs
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF (@Foot_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 5, @Foot_ID, @Foot_Dur --Foot
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF @weapon_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 6, @weapon_ID, @weapon_Dur --Weapon
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
IF @weapon_Shield_Status = 0)
BEGIN
IF (@Shield_ID <> 0)
BEGIN
EXEC @ItemID = SRO_VT_SHARD.dbo._FN_ADD_INITIAL_EQUIP @NewCharID, 7, @Shield_ID, @Shield_Dur --Shield
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
END
-----------------------------------------------------------------------------
-- 3-2. ¾Æ¹ÙŸ Inventory ½½·Ô ä¿ì±â
-- [¾Æ¹ÙŸ Àκ¥Å丮 ½½·Ô 5°³]
-- APPLY_AVATAR_SYSTEMÀÌ Àû¿ëµÇ¸é¼* Ãß°¡µÇ´Â ºÎºÐ
-----------------------------------------------------------------------------
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO SRO_VT_SHARD.._InventoryForAvatar(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
FROM SRO_VT_SHARD.._RefDummySlot with( nolock )
WHERE cnt < 5
IF (@@ERROR <> 0)
BEGIN
-- ¾Æ¹ÙŸ Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -14
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
-----------------------------------------------------------------------------
-- default skill³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
DECLARE @country tinyINT
EXEC @country = SRO_VT_SHARD.._GetObjCountry @RefCharID
INSERT INTO SRO_VT_SHARD.._CharSkillMastery (CharID, MasteryID, Level)
SELECT @NewCharID, MasteryID, 0
FROM SRO_VT_SHARD.._RefCharDefault_SkillMastery with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -15
END
INSERT INTO SRO_VT_SHARD.._CharSkill (CharID,SkillID,Enable)
SELECT @NewCharID, SkillID, 1
FROM SRO_VT_SHARD.._RefCharDefault_Skill with(nolock)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -16
END
-----------------------------------------------------------------------------
-- ±âº» Äù½ºÆ® ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0
FROM SRO_VT_SHARD.._RefQuest
WHERE CodeName in (SELECT CodeName FROM SRO_VT_SHARD.._RefCharDefault_Quest with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and Service = 1)
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -17
END
-----------------------------------------------------------------------------
-- Static Avatar Initial Record ³Ö±â
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._StaticAvatar(CharID) values(@NewCharID)
IF (@@ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END
-----------------------------------------------------------------------------
-- Trijob ä¿ö³Ö±â!!!!!
-----------------------------------------------------------------------------
INSERT INTO SRO_VT_SHARD.._CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -19
END
-----------------------------------------------------------------------------
-- CharList¿¡ ID ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT SRO_VT_SHARD.._CharNameList VALUES(@CharName, @NewCharID)
/* inserting into chest */
-- BEGIN
DECLARE @Start tinyint = 0
DECLARE @End tinyint = 239
WHILE @Start < @End
BEGIN
SET @Start += 1
INSERT INTO SRO_VT_SHARD.._Chest (UserJID,Slot) VALUES @userJID,@Start)
END
exec SRO_VT_SHARD.._InsertToChestInfo
-- END
-- Quick Slot Á¤º¸ ÀúÀå¿ë!!!
exec SRO_VT_SHARD.dbo._AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION
print 'JID : '+CONVERT(varchar(25) @userJID)
print 'Username : ' @username
print 'CharID : '+CONVERT(varchar(25),@NewCharID)
print 'Charname : '+@CharName
print 'CharType : '+@CharType
print 'CharGender : '+@CharGender
print 'CharTown : ' @town
print 'CharScale : '+CONVERT(varchar(25),@CharScale)
print 'Charlevel : '+CONVERT(varchar(25),@CharLevel)
print 'Charstr : '+CONVERT(varchar(25),@CharStr)
print 'Charint : '+CONVERT(varchar(25),@CharInt)
print 'CharGold : '+CONVERT(varchar(25),@CharGold)
print 'CharSP : '+CONVERT(varchar(25),@CharSP)
print 'CharHP : '+CONVERT(varchar(25),@CharHP)
print 'CharMP : '+CONVERT(varchar(25),@CharMP)
print 'Char_InvSlot : '+CONVERT(varchar(25),@CharInv)
print 'Weapon_Name : ' @weaponName
print 'Weapon_Type : ' @weaponType
print 'Weapon_Degree : ' @weaponDegree
print 'Armor_Name : '+@ArmorName
print 'Armor_Type : '+@ArmorType
print 'Armor_Degree : '+@ArmorDegree
print 'character has been created successfully'
RETURN @NewCharID
DECLARE @username varchar(24) = 'player7'--username
DECLARE @Charname varchar(64) = 'Player7'--charname
DECLARE @CharType varchar(8) = 'Chinese' -- Available : Europe , Chinese
DECLARE @CharGender varchar(7) = 'Female' -- Available : Male , Female
DECLARE @town varchar(64) = 'Jangan' -- Available : Jangan , Donwhang , Hotan , SamarKand , Constantinople
DECLARE @CharLevel tinyint = '125'--charlevel
DECLARE @CharStr int = '395'--charstr
DECLARE @CharInt int = '395'--charint
DECLARE @Gold int = '9999999'--gold
DECLARE @SP int = '99999999'--sp
DECLARE @CharSTP int = '0'--char state point
DECLARE @HP int = '200'--hp
DECLARE @MP int = '200'--mp
DECLARE @INVSlot int = '109'--inv slot
-- Weapon Available
/* Chinese Available : Sword , Blade , Spear , Blade , Glavie */
/* Europe Available : Staff , TwoHandedSword , OneHanded , Dagger , CrossBow , WarLock , Cleric , Harp */
DECLARE @weaponName varchar(129) = 'Sword'
DECLARE @weaponType varchar(129) = 'Sun' -- Available : Normal , Sos , Moon , Sun
DECLARE @weaponDegree varchar(129) = '13'
DECLARE @ArmorName varchar(129) = 'Armor' -- Available : Garment , Protector , Armor
DECLARE @ArmorType varchar(129) = 'Sun' -- Available : Normal , Sos , Moon , Sun
DECLARE @ArmorDegree varchar(129) = '13'
exec [_KingDollar_AddCharacter_ToAccount] @username,@Charname,@CharType,@CharGender @town,@CharLevel,@CharStr,@CharInt,@Gold,@SP,@HP,@MP,@I NVSlot @weaponName @weaponType @weaponDegree,@ArmorName,@ArmorType,@ArmorDegree
DECLARE @Charname varchar(64) = 'Player7'--charname
DECLARE @CharType varchar(8) = 'Chinese' -- Available : Europe , Chinese
DECLARE @CharGender varchar(7) = 'Female' -- Available : Male , Female
DECLARE @town varchar(64) = 'Jangan' -- Available : Jangan , Donwhang , Hotan , SamarKand , Constantinople
DECLARE @CharLevel tinyint = '125'--charlevel
DECLARE @CharStr int = '395'--charstr
DECLARE @CharInt int = '395'--charint
DECLARE @Gold int = '9999999'--gold
DECLARE @SP int = '99999999'--sp
DECLARE @CharSTP int = '0'--char state point
DECLARE @HP int = '200'--hp
DECLARE @MP int = '200'--mp
DECLARE @INVSlot int = '109'--inv slot
-- Weapon Available
/* Chinese Available : Sword , Blade , Spear , Blade , Glavie */
/* Europe Available : Staff , TwoHandedSword , OneHanded , Dagger , CrossBow , WarLock , Cleric , Harp */
DECLARE @weaponName varchar(129) = 'Sword'
DECLARE @weaponType varchar(129) = 'Sun' -- Available : Normal , Sos , Moon , Sun
DECLARE @weaponDegree varchar(129) = '13'
DECLARE @ArmorName varchar(129) = 'Armor' -- Available : Garment , Protector , Armor
DECLARE @ArmorType varchar(129) = 'Sun' -- Available : Normal , Sos , Moon , Sun
DECLARE @ArmorDegree varchar(129) = '13'
exec [_KingDollar_AddCharacter_ToAccount] @username,@Charname,@CharType,@CharGender @town,@CharLevel,@CharStr,@CharInt,@Gold,@SP,@HP,@MP,@I NVSlot @weaponName @weaponType @weaponDegree,@ArmorName,@ArmorType,@ArmorDegree
Hope it save your time
trying to help not more