• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

Help pls, cant setup Auto Equipped Tool from Royalblade*

Newbie Spellweaver
Joined
Nov 6, 2012
Messages
67
Reaction score
4
Hello Community, i cant setup the auto equipped system from royalblade, but it looks so easy -.-

i create the RoyalItemPoolAutoEquipment Table
i create the AutoEquipment Table,

I used this to insert my first item what i wanted to change at level 8.

INSERT INTO VSRO_SHARD.._RoyalItemPoolAutoEquipment
SELECT 1, ID, CodeName128, TypeID1, TypeID2, TypeID3, TypeID4, ReqLevel1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, 0, CASE WHEN Country = 1 THEN 1 ELSE 0 END
FROM VSRO_SHARD.._RefObjCommon
WHERE CodeName128 = 'ITEM_CH_SWORD_02_A_RARE'

Then i level up to 8 and teleport to town, but its not worked -.-

Now i dont understand why, the code is so clean to understand. All seems fine.



USE [VSRO_SHARD]
GO
/****** Object: CREATE TABLE [dbo].[_RoyalItemPoolAutoEquipment] Script Date: 11.09.2020 00:07:08 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--DELETE ALL TOP, IF NOT WORK
CREATE TABLE [dbo].[_RoyalItemPoolAutoEquipment](
[service] [int] NOT NULL,
[ID] [int] NOT NULL,
[CodeName128] [varchar](129) NOT NULL,
[TypeID1] [tinyint] NOT NULL,
[TypeID2] [tinyint] NOT NULL,
[TypeID3] [tinyint] NOT NULL,
[TypeID4] [tinyint] NOT NULL,
[ReqLevel1] [tinyint] NOT NULL,
[Gender] [tinyint] NULL,
[P1] [bigint] NULL,
[P2] [bigint] NULL,
[P3] [bigint] NULL,
[P4] [bigint] NULL,
[P5] [bigint] NULL,
[P6] [bigint] NULL,
[P7] [bigint] NULL,
[P8] [bigint] NULL,
[P9] [bigint] NULL,
[MagParamNum] [tinyint] NULL,
[Va] [bigint] NULL,
[Race] [bit] NULL,
CONSTRAINT [PK__RoyalItemPoolAutoEquipment] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

USE [VSRO_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AutoEquipment] Script Date: 11.09.2020 11:26:50 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[_AutoEquipment]
@CharID INT,
@data2 INT
AS

DECLARE @Flag INT = 0, @ID64 INT, @ReFObjID INT, @ReFItemID INT, @T1 TINYINT, @T2 TINYINT, @T3 TINYINT, @T4 TINYINT, @optLvl TINYINT, @race BIT, @Gen TINYINT;
SELECT @Gen =
CASE
WHEN RefObjID BETWEEN 1920 AND 1932
THEN 2
WHEN RefObjID <= 1919
THEN 1
WHEN RefObjID BETWEEN 14875 AND 14887
THEN 3
WHEN RefObjID BETWEEN 14888 AND 14900
THEN 4
ELSE 0
END
FROM VSRO_SHARD.._Char WITH (NOLOCK)
WHERE CharID = @CharID

SELECT @race =
CASE
WHEN @Gen IN (1,2)
THEN 0
WHEN @Gen IN (3,4)
THEN 1
ELSE NULL
END

IF @race IS NULL
RETURN;

WHILE @Flag <13
BEGIN
SELECT @ID64 = 0, @ReFItemID = 0, @ReFObjID = 0, @T1 = 0, @T2 =0, @T3 = 0, @T4 = 0
IF @Flag != 8
BEGIN
SELECT @ID64 = I.ItemID,
@ReFObjID = IT.RefItemID,
@optLvl = IT.OptLevel
FROM VSRO_SHARD.._Inventory I WITH (NOLOCK)
INNER JOIN VSRO_SHARD.._Items IT WITH (NOLOCK) ON I.ItemID = IT.ID64
WHERE I.Slot = @Flag
AND I.CharID = @CharID
AND IT.RefItemID NOT IN (62,3655, 3823, 24459, 38345, 10383, 10885,19644, 24460, 38346) -- Arrows & Bolts...

IF @ID64 != 0 AND @ReFObjID IS NOT NULL
BEGIN
SELECT @T1 = TypeID1,@T2 = TypeID2, @T3 = TypeID3, @T4 = TypeID4
FROM VSRO_SHARD.._RefObjCommon
WHERE ID = @ReFObjID

SELECT @optLvl =
CASE WHEN @optLvl >= 3
THEN @optLvl
ELSE 3
END

UPDATE VSRO_SHARD.._Items
SET RefItemID = Q.ID,
Variance = ISNULL(Q.Va, 0),
MagParam1 = Q.P1,
MagParam2 = Q.P2,
MagParam3 = Q.P3,
MagParam4 = Q.P4,
MagParam5 = Q.P5,
MagParam6 = Q.P6,
MagParam7 = Q.P7,
MagParam8 = Q.P8,
MagParam9 = Q.P9,
MagParamNum = Q.MagParamNum,
OptLevel = @optLvl
FROM (
SELECT TOP 1 ID,
P1,
P2,
P3,
P4,
P5,
P6,
P7,
P8,
P9,
Va,
CASE
WHEN P1 = 0
THEN 0
WHEN P5 = 0
THEN 4
WHEN P6 = 0
THEN 5
WHEN P7 = 0
THEN 6
WHEN P8 = 0
THEN 7
ELSE 0
END
AS MagParamNum
FROM VSRO_SHARD.._royalitempoolautoequipment P WITH (NOLOCK)
WHERE typeid1 = @T1
AND typeid2 = @T2
AND typeid3 = @T3
AND typeid4 = @T4
AND (Gender = @Gen OR Gender = 0)
AND Race = @race
AND ReqLevel1 <= @data2

ORDER BY reqlevel1 DESC
)
AS Q
WHERE ID64 = @ID64
AND ID64 != 0
AND Q.ID != 0
END
END
SET @Flag += 1
END

INSERT INTO VSRO_SHARD.._RoyalItemPoolAutoEquipment
SELECT 1, ID, CodeName128, TypeID1, TypeID2, TypeID3, TypeID4, ReqLevel1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, 0, CASE WHEN Country = 1 THEN 1 ELSE 0 END
FROM VSRO_SHARD.._RefObjCommon
WHERE CodeName128 = 'ITEM_CH_SWORD_02_A_RARE'

Can anyone find the Mistake ?
 
Last edited:
Newbie Spellweaver
Joined
Nov 6, 2012
Messages
67
Reaction score
4
I really need help at this situation, i cant analyze the problem. The Code is written so nice, but i dont know why my weapon not updated after level 8 when i teleport back to city ...

the update function not working for me.. but all looks great, i totaly understand this code.

really someone should check it pls :))))))
 
Last edited:
Upvote 0
Back
Top