|
• الانـتـسـاب » Mar 2016
|
• رقـم العـضـويـة » 129351
|
• المشـــاركـات » 393
|
• الـدولـة » الجيزة
|
• الـهـوايـة » Designer and editor
|
• اسـم الـسـيـرفـر » Private Server
|
• الـجـنـس » Male
|
• نقـاط التقييم » 10
|
|
|
تجميعة سيستمات مفيد
معرفش الموضوع ده اتعمل ولا لا
-------------------------------------
Daily Reward System
Add this to _AddLogChar at log db
كود:
if (@EventID = 4)
begin
exec [dbo].[_DailyRew]
end
Create this procedure at LOG db
كود:
USE [SRO_VT_SHARDLOG]
GO
Object StoredProcedure [dbo].[_DailyRew] Script Date 10282014 104519 PM
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[_DailyRew]
@CharID int,
@Eventid int
AS
if @EventID = '4'
BEGIN
DECLARE @CharN VARCHAR(52) = (SELECT CharName16 FROM SRO_VT_SHARD.dbo._Char WHERE CharID = @CharID)
DECLARE @Date Date = GETDATE() -1
DECLARE @JID int = (SELECT UserJID FROM SRO_VT_SHARD.dbo._User where CharID = @CharID)
DECLARE @AccountID varchar (25) = (SELECT AccountID FROM SRO_VT_SHARD.dbo._AccountJID As ID INNER JOIN SRO_VT_SHARD.dbo._User as JID ON Id.JID = JID.UserJID where CharID = @CharID)
DECLARE @RewardGiven varchar(52) = 'ITEM_ETC_SILK_250'
DECLARE @DayReward INT = (SELECT IsDay FROM _DailyReward WHERE JID = @JID and LoginDate = @Date)
DECLARE @RefObjID int
DECLARE @DATEN Date = GETDATE()
select @RefObjID = RefObjID from SRO_VT_SHARD.dbo._Char with (nolock) where CharName16 = 'UnDeath'
DECLARE @RealDate date = (Select [LoginDate] from _DailyReward where Jid = @JID)
UPDATE _DailyReward set IsLogin = 'ON' where JID = @JID
IF NOT EXISTS (SELECT FROM _DailyReward WHERE JID = @JID)
BEGIN
INSERT INTO _DailyReward (JID,IsLogin,LoginDate,IsMSent,IsRecivce,IsDay)
VALUES (@JID,'ON',GETDATE(),'NO','NO','1')
END
ELSE IF @DayReward BETWEEN '1' and '2'
BEGIN
UPDATE _DailyReward SET IsMSent = 'YES',IsRecivce = 'YES',IsDay += 1, LoginDate=GETDATE(),IsLogin = 'ON' WHERE JID = @JID
exec SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, 1, 0
INSERT INTO SRO_VT_SHARD.dbo._Memo (CharID,FromCharName,[Message],[Date],[Status],RefObjID)
VALUES (@CharID,'DailyReward','Thank you for visiting us again, please check the storage you will find your gift and its not our problem if there is no place in the storage to add the gift, Collect them and exchange them for good gift.',GETDATE(),'0',@RefObjID)
END
ELSE IF @DayReward BETWEEN '3' and '4'
BEGIN
UPDATE _DailyReward SET IsMSent = 'YES',IsRecivce = 'YES',IsDay += 1, LoginDate=GETDATE(),IsLogin = 'ON' WHERE JID = @JID
exec SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, 8, 0
INSERT INTO SRO_VT_SHARD.dbo._Memo (CharID,FromCharName,[Message],[Date],[Status],RefObjID)
VALUES (@CharID,'DailyReward','Thank you for visiting us again, please check the storage you will find your gift and its not our problem if there is no place in the storage to add the gift, Collect them and exchange them for good gift.',GETDATE(),'0',@RefObjID)
END
ELSE IF @DayReward BETWEEN '5' and '6'
BEGIN
UPDATE _DailyReward SET IsMSent = 'YES',IsRecivce = 'YES',IsDay += 1, LoginDate=GETDATE(),IsLogin = 'ON' WHERE JID = @JID
exec SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, 12, 0
INSERT INTO SRO_VT_SHARD.dbo._Memo (CharID,FromCharName,[Message],[Date],[Status],RefObjID)
VALUES (@CharID,'DailyReward','Thank you for visiting us again, please check the storage you will find your gift and its not our problem if there is no place in the storage to add the gift, Collect them and exchange them for good gift.',GETDATE(),'0',@RefObjID)
END
ELSE IF @DayReward = '7' -- 2nd week
BEGIN
UPDATE _DailyReward SET IsMSent = 'YES',IsRecivce = 'YES',IsDay += 1, LoginDate=GETDATE(),IsLogin = 'ON' WHERE JID = @JID
exec SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, 14, 0
INSERT INTO SRO_VT_SHARD.dbo._Memo (CharID,FromCharName,[Message],[Date],[Status],RefObjID)
VALUES (@CharID,'DailyReward','Thank you for visiting us again, please check the storage you will find your gift and its not our problem if there is no place in the storage to add the gift, Collect them and exchange them for good gift.',GETDATE(),'0',@RefObjID)
END
ELSE IF @DayReward BETWEEN '8' and '10'
BEGIN
UPDATE _DailyReward SET IsMSent = 'YES',IsRecivce = 'YES',IsDay += 1, LoginDate=GETDATE(),IsLogin = 'ON' WHERE JID = @JID
exec SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, 18, 0
INSERT INTO SRO_VT_SHARD.dbo._Memo (CharID,FromCharName,[Message],[Date],[Status],RefObjID)
VALUES (@CharID,'DailyReward','Thank you for visiting us again, please check the storage you will find your gift and its not our problem if there is no place in the storage to add the gift, Collect them and exchange them for good gift.',GETDATE(),'0',@RefObjID)
END
ELSE IF @DayReward BETWEEN '11' and '12'
BEGIN
UPDATE _DailyReward SET IsMSent = 'YES',IsRecivce = 'YES',IsDay += 1, LoginDate=GETDATE(),IsLogin = 'ON' WHERE JID = @JID
exec SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, 19, 0
INSERT INTO SRO_VT_SHARD.dbo._Memo (CharID,FromCharName,[Message],[Date],[Status],RefObjID)
VALUES (@CharID,'DailyReward','Thank you for visiting us again, please check the storage you will find your gift and its not our problem if there is no place in the storage to add the gift, Collect them and exchange them for good gift.',GETDATE(),'0',@RefObjID)
END
ELSE IF @DayReward = '15'
BEGIN
UPDATE _DailyReward SET IsMSent = 'YES',IsRecivce = 'YES',IsDay += 1, LoginDate=GETDATE(),IsLogin = 'ON' WHERE JID = @JID
exec SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN_CHEST @AccountID, @RewardGiven, 20, 0
INSERT INTO SRO_VT_SHARD.dbo._Memo (CharID,FromCharName,[Message],[Date],[Status],RefObjID)
VALUES (@CharID,'DailyReward','Thank you for visiting us again, please check the storage you will find your gift and its not our problem if there is no place in the storage to add the gift, Collect them and exchange them for good gift.',GETDATE(),'0',@RefObjID)
END
ELSE IF @RealDate != @DATEN
AND @RealDate != @Date
BEGIN
UPDATE _DailyReward SET LoginDate = GETDATE(),IsDay = '1' WHERE JID = 9
END
END
GO
Create this table at log db
كود:
USE [SRO_VT_SHARDLOG]
GO
/****** Object: Table [dbo].[_DailyReward] Script Date: 10/28/2014 10:45:59 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[_DailyReward](
[ID] [int] IDENTITY(1,1) NOT NULL,
[JID] [int] NOT NULL,
[IsLogin] [varchar](16) NULL,
[LoginDate] [date] NULL,
[IsMSent] [varchar](16) NULL,
[IsRecivce] [varchar](16) NULL,
[IsDay] [int] NULL,
CONSTRAINT [PK__DailyReward] 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]
GO
SET ANSI_PADDING OFF
GO
finally, create this table at log db too.
كود:
USE [SRO_VT_SHARDLOG]
GO
/****** Object: Table [dbo].[_DailyGift] Script Date: 10/28/2014 10:46:14 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[_DailyGift](
[ID] [int] IDENTITY(1,1) NOT NULL,
[CodeName] [varchar](50) NULL,
[Count] [int] NULL,
[Day] [int] NULL,
CONSTRAINT [PK__DailyGift] 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]
GO
SET ANSI_PADDING OFF
GO
-------------------------------------------
Unique Kills System Reward
السيستم ده عبارة عن :
لو قتلت يونيك معين اكتر من 5 مرات أو 5 مرات بس
تستلم Item ب + معين انت اللى بتحدده
أو Coin برضو بالعدد اللى تحدده
و كمان يستلم تايتل بس لازم تبقى مجهزه فى
Textuisystem.txt
SRO_VT_SHARDLOG > Programility > Stored Procedure
_AddLogItem
كود:
DECLARE @CharNameCountKERB Int,
@hwan int,
@Charname Varchar(MAX)
IF (@CharNameCountKERB >= '5')
begin
IF @hwan = '90'
begin
Update SRO_VT_SHARD.dbo._Char Set HwanLevel='6' where (CharName16 = @Charname)
insert into SRO_VT_SHARDLOG.dbo.PlusNotice ([Sent],[message],[date]) Values ('0','** Unique Slayer System** : '+@Charname+' has now recived ( Jupiter Slayer) title for killing Jupiter 5 times or more ',GETDATE())
delete from SRO_VT_SHARDLOG.dbo._Uniques where ((CharName = @Charname) and MonsterCodeName like 'MOB_JUPITER_JUPITER')
exec SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN @Charname,'ITEM_ETC_ARENA_COIN',500,0
end
end
عند (@CharNameCountKERB >= '5
رقم 5 ده بتغيره على حسب منتا عايزه يقتل قد ايه علشان يستلم الحاجة
اما بقى HwanLevel= '6'
ف ده رقم التايتل اللى هيستلمه و ده هيتغير على حسب برضو الرقم اللى عندك جوة Textuisystem.txt
و مسارها اهو
Media/Server_Dep/Silkroad/Textdata/Textuisystem.txt
و علشان تغير اليونيك هتغير الكود ده
'MOB_JUPITER_JUPITER'
لأى يونيك انت تحبه
علشان بقى تغير الـReward
هتغير الكود ده
'ITEM_ETC_ARENA_COIN'
و العدد بتاعها اللى هو ,500
و الرقم ,0
ده لو هتبعت ايتم مثلا سلاح و عايزه يبقى +12 مثلا
بتغير ال0 ل 12
ملحوظة : لما بيموت اليونيك ال5 مرات
بيجيله رسالة فى الـNotice كده
بيقوله فيها انك جالك الReward + Title
هتلاحظوها فى الـProcedure
Upgrade System [Note] Not Scroll
السيستم عبارة عن :
بيخلى الأيتم مثلا الدجرى 12 +10
تبقى دجرى 13 بس +0 من غير اى سكرول بقى ولا حاجة
_AddLogItem
كود:
if (@JobID = '4000')
كود:
begin DECLARE @OldItemCodeName varchar(128) = 'ITEM_CH_NECKLACE_11_A' DECLARE @OldItemPlus int = 7 DECLARE @NewItemCodeName varchar(128) = 'ITEM_CH_NECKLACE_12_A' DECLARE @NewItemPlus int = 0 DECLARE @ReplaceID int = (select top 1 ItemID from _Inventory as inv inner join _Items as itm on inv.ItemID = itm.ID64 inner join _RefObjCommon as common on itm.RefItemID = common.ID where inv.CharID = @CharID and common.CodeName128 = @CodeName128 and itm.OptLevel = @OldItemPlus) if (@ReplaceID > 0) begin Update _Inventory set ItemID = 0 where ItemID = @ReplaceID and CharID = @CharID exec _ADD_ITEM_EXTERN @CharName,@NewItemCodeName,1,@NewItemPlus end
end
هتبدل الدجرى 11 بالأيتم اللى عايزها تترفع
و هتبدل الدجرى 12 بالأيتم الجديدة المقصودة بأستخدام السيستم
-------------------------------------
Ban IP By CharName System
بالسيستم ده تقدر
1-Ban IP
2-know ip by char name
3-know char name by ip
Create Table
كود:
USE SRO_VT_SHARDLOG
CREATE TABLE _IPLogs ([No.] int IDENTITY(1,1) PRIMARY KEY,
[CharID] int,
[Charname] varchar(max),
[IP] varchar(max),
[Date] datetime)
كود:
USE SRO_VT_SHARDLOG
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[_AddLogChar]
@CharID int,
@EventID tinyint,
@Data1 int,
@Data2 int,
@strPos varchar(64),
@Desc varchar(128)
as
IF(@EventID = 4 OR @EventID = 6)
BEGIN
declare @len_pos int
declare @len_desc int
set @len_pos = len(@strPos)
set @len_desc = len(@Desc)
if (@len_pos > 0 and @len_desc > 0)
begin
insert _LogEventChar values(@CharID, GetDate(), @EventID, @Data1, @Data2, @strPos, @Desc)
end
else if (@len_pos > 0 and @len_desc = 0)
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2, EventPos) values(@CharID, GetDate(), @EventID, @Data1, @Data2, @strPos)
end
else if (@len_pos = 0 and @len_desc > 0)
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2, strDesc) values(@CharID, GetDate(), @EventID, @Data1, @Data2, @Desc)
end
else
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2) values(@CharID, GetDate(), @EventID, @Data1, @Data2)
end
--For the new IPLog table
Declare @DynIP varchar(max);
exec @DynIP = SRO_VT_ACCOUNT.dbo.split_ip @Data2
INSERT INTO _IPLogs (CharID,Charname,IP,[Date]) VALUES (@CharID, (SELECT CharName16 FROM SRO_VT_SHARD_INIT.dbo._Char WHERE CharID = @CharID),@DynIP,GETDATE())
-- END
END
----------------------------------------------------------------------------------------------
كود:
USE [SRO_VT_ACCOUNT]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[_BannPlayerSP]
@CharName varchar(max),
@Reason varchar(max)
as
--------------------------------
DECLARE @ChrID INT;
DECLARE @AccJID INT;
---------------------------------
SET @ChrID=(SELECT CharID FROM SRO_VT_SHARD_INIT.dbo._Char WHERE CharName16=@CharName)
SET @AccJID=(SELECT UserJID FROM SRO_VT_SHARD_INIT.dbo._User WHERE CharID=@ChrID)
----------------------
DECLARE
@ID VARCHAR(64) = (Select STRuserID FROM TB_User Where JID = @AccJID),
@Begin DATETIME = GETDATE()-1,
@End DATETIME = GETDATE()+3650
INSERT [dbo].[_Punishment]
(
[UserJID],
[Type],
[Executor],
[Shard],
[CharName],
[CharInfo],
[PosInfo] ,
[Guide],
[Description],
[RaiseTime],
[BlockStartTime],
[BlockEndTime],
[PunishTime],
[Status]
)
VALUES
(
@AccJID,
1,
1,
0,
@CharName,
1,
1,
@Reason,
@Reason,
@Begin,
@Begin,
@End,
@End,
0);
----------------------------------------------------------
DECLARE @ReasonID INT
SET @ReasonID =
(Select SerialNo FROM _Punishment Where UserJID = @AccJID)
----------------------------------------------------------
INSERT [dbo].[_BlockedUser]
([UserJID],
[UserID],
[Type],
[SerialNo],
[TimeBegin],
[TimeEnd])
VALUES
(@AccJID,
@ID,
1,
@ReasonID,
@Begin,
@End);
-----------------------------------------------------------------
SELECT StrUserID FROM TB_User WHERE JID = @AccJID
---------------------------------------------------------------
كود:
USE [SRO_VT_SHARDLOG]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[_AddLogChar]
@CharID int,
@EventID tinyint,
@Data1 int,
@Data2 int,
@strPos varchar(64),
@Desc varchar(128)
as
IF(@EventID = 4 OR @EventID = 6)
BEGIN
declare @len_pos int
declare @len_desc int
set @len_pos = len(@strPos)
set @len_desc = len(@Desc)
if (@len_pos > 0 and @len_desc > 0)
begin
insert _LogEventChar values(@CharID, GetDate(), @EventID, @Data1, @Data2, @strPos, @Desc)
end
else if (@len_pos > 0 and @len_desc = 0)
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2, EventPos) values(@CharID, GetDate(), @EventID, @Data1, @Data2, @strPos)
end
else if (@len_pos = 0 and @len_desc > 0)
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2, strDesc) values(@CharID, GetDate(), @EventID, @Data1, @Data2, @Desc)
end
else
begin
insert _LogEventChar (CharID, EventTime, EventID, Data1, Data2) values(@CharID, GetDate(), @EventID, @Data1, @Data2)
end
--For the new IPLog table
Declare @DynIP varchar(max);
exec @DynIP = SRO_VT_ACCOUNT.dbo.split_ip @Data2
INSERT INTO _IPLogs (CharID,Charname,IP,[Date]) VALUES (@CharID, (SELECT CharName16 FROM SRO_VT_SHARD_INIT.dbo._Char WHERE CharID = @CharID),@DynIP,GETDATE())
-- END
-- Banned IP stuff
IF exists (SELECT IP FROM _BannedIPs WHERE IP like @DynIP)
BEGIN
Declare @Charname varchar(max) = (SELECT CharName16 FROM SRO_VT_SHARD_INIT.dbo._Char WHERE CharID = @CharID)
exec SRO_VT_ACCOUNT.dbo._BannPlayerSP @Charname,'usage of a banned IP'
-- END banned IP stuff
END
END
---------------------------------------------------------------
-------------------------------------
GM Massage System
السيستم عبارة عن انك بتبعت رسالة بأسم معين و تكتب فيها
حاجة معينة و تنتقل لمكان تانى هتلاقى معاك Full Item D11 Egy +250
بدل متتعب نفسك و تستخدم كويرى أو اى حاجة تانية
كود:
USE [SRO_VT_SHARD]GO
/****** Object: StoredProcedure [dbo].[_Memo_Add] Script Date: 5/21/2014 12:35:32 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
------------------------------------------------
-- # PROCEDURE _Memo_Add ¼ِء¤
------------------------------------------------
ALTER procedure [dbo].[_Memo_Add]
--ات؟ن ئؤ¶َ¹جإح
@TargetCharName varchar(64),
@SenderCharName varchar(64),
@message varchar(300),
--؛خ°، ئؤ¶َ¹جإح
@Max_MEMO_COUNT int
as
DECLARE @SI1D int = (SELECT charid FROM _Char where CharName16 = @SenderCharName)
-- Penalty Remover
IF @TargetCharName like 'Penalty_R'
BEGIN
DELETE FROM _TimedJob where JobID = '1' and CharID = @SI1D or JobID = '2' and CharID = @SI1D
END
begin transaction
declare @Target_charid int
set @Target_charid = (select CharID from _Char where CharName16 = @TargetCharName)
if (@@error <> 0 or @@rowcount = 0 )
begin
--±×·±¾ض´آ ¾ّ¾î~
rollback transaction
return -1
end
declare @memo_count int
select @memo_count = count(*) from _Memo where CharID = @Target_charid
if( @memo_count >= @Max_MEMO_COUNT )
begin
-- آتءِاشہج ²ثأ،³×~
rollback transaction
return -2
end
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
-- EUROPE_SYSTEM (أضہخب£)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
declare @ReFObjID int
select @ReFObjID = RefObjID from _Char with (nolock) where CharName16 = @SenderCharName
if (@@error <> 0 or @@rowcount = 0 )
begin
rollback transaction
return -4
end
declare @RecordDate smalldatetime
set @RecordDate = GetDate()
insert _Memo (CharID, FromCharName,Message,Date,Status,RefObjID) values( @Target_charid, @SenderCharName, @message, @RecordDate, 0, @ReFObjID )
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
if (@@error <> 0 or @@rowcount = 0 )
begin
rollback transaction
--ب£°î!!
return -3
end
commit transaction
return @@identity
If @TargetCharName like 'Rover' and @message = 'GM_SET_EU_HA_M')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_HEAVY_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_HEAVY_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_HEAVY_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_HEAVY_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_HEAVY_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_HEAVY_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'ediny +250')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_HEAVY_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_HEAVY_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_HEAVY_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_HEAVY_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_HEAVY_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_HEAVY_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_EU_LA_M')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_LIGHT_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_LIGHT_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_LIGHT_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_LIGHT_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_LIGHT_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_LIGHT_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_EU_LA_W')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_LIGHT_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_LIGHT_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_LIGHT_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_LIGHT_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_LIGHT_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_LIGHT_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_EU_CL_M')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_CLOTHES_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_CLOTHES_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_CLOTHES_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_CLOTHES_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_CLOTHES_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_M_CLOTHES_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_EU_CL_W')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_CLOTHES_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_CLOTHES_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_CLOTHES_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_CLOTHES_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_CLOTHES_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_W_CLOTHES_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_CH_HA_M')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_HEAVY_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_HEAVY_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_HEAVY_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_HEAVY_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_HEAVY_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_HEAVY_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_CH_HA_W')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_HEAVY_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_HEAVY_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_HEAVY_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_HEAVY_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_HEAVY_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_HEAVY_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_CH_LA_M')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_LIGHT_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_LIGHT_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_LIGHT_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_LIGHT_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_LIGHT_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_LIGHT_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_CH_LA_W')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_LIGHT_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_LIGHT_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_LIGHT_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_LIGHT_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_LIGHT_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_LIGHT_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_CH_CL_M')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_CLOTHES_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_CLOTHES_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_CLOTHES_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_CLOTHES_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_CLOTHES_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_M_CLOTHES_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_SET_CH_CL_W')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_CLOTHES_11_SA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_CLOTHES_11_HA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_CLOTHES_11_AA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_CLOTHES_11_BA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_CLOTHES_11_LA_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_W_CLOTHES_11_FA_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_EU_ITEMS_PACK')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_TSTAFF_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_TSWORD_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_SWORD_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_STAFF_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_HARP_11_S_ET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_SHIELD_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_DAGGER_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_CROSSBOW_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_EU_DARKSTAFF_11_SET_B_RARE',1,250
end
If @TargetCharName like 'Rover' and @message = 'GM_CH_ITEMS_PACK')
begin
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_BOW_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_BLADE_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_SWORD_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_TBLADE_11_SET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_SPEAR_11_S_ET_B_RARE',1,250
exec _ADD_ITEM_EXTERN @SenderCharName,'ITEM_CH_SHIELD_11_SET_B_RARE',1,250
end
هتبعت رسالة ل : Rover
هتكتب فيها : ediny +250
هتسافر هتلاقى معاك الأيتم ايجى +250
ممكن تغيرها على حسب منتا عايز بقى
-------------------------------------
Gift Plvl System
السيستم عبارة عن :
انك لو جيت لفل 110 مثلا تسافر يجيلك Reward
و ده انصح بأستخدامه فى سيرفرات الـPVE مش الPVP
علشان الPVP بتنزل جاهز و كده
SRO_VT_SHARDLOG > Programility > _AddLogChar
كود:
if @eventID = '22' and @data2 = '110'declare @CharName16 varchar(64) = (Select CharName16 From SRO_VT_SHARD.._Char Where CharID = @CharID)
كود:
begin exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CharName16,'ITEM_EVENT_PREMIUM_VIETNAM_GOLDTIME_PLUS',1,1 exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CharName16,'ITEM_COS_P_CAT_SCROLL',1,1 exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CharName16,'ITEM_COS_P_FLUTE_WHITE_SMALL',1,1
END
ممكن تغير 110 على حسب منتا عايز عند
@data= '110'
و تغير الأيتم اللى هتاخدها كهدية لما توصل للفل ده
-------------------------------------
Job Coin System
الموضوع عن تغير الرويرد البيدهولك الــTrade
الهوه Gold
هتعمل 4 Querys هيزبتوا الدنيا
اول Query
هتغير ITEM_ETC_ARENA_COIN
كود:
USE [SRO_VT_LOG]GO/****** Object: StoredProcedure [dbo].[_JobCoins] Script Date: 25.02.2015 13:24:59 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO
CREATE procedure [dbo].[_JobCoins] @charID int, @eventID tinyintasDECLARE @charnameJob varchar(268) = (Select CharName16 From SRO_VT_SHARD.dbo._Char where CharID = @charID)Declare @JID Int = (select UserJID from SRO_VT_SHARD.dbo._User where CharID = @charID)DECLARE @char_ReqLevel int = (Select CurLevel from SRO_VT_SHARD.dbo._char where CharID = @charID)-- Begin Hunter RewardIf @eventID = 6beginDeclare @cosID int = (select ID from SRO_VT_SHARD.dbo._CharCOS where OwnerCharID = @charID)----------------------------------------------------------Begin Delete pet if he loggout. Delete from SRO_VT_SHARD.dbo._InvCOS where COSID = @cosIDDelete from SRO_VT_SHARD.dbo._CharCOS where OwnerCharID = @charID and RefCharID between '2187' and '2189'or OwnerCharID = @charID and RefCharID between '3915' and '3917'or OwnerCharID = @charID and RefCharID between '3912' and '3914'or OwnerCharID = @charID and RefCharID between '2184' and '2186'or OwnerCharID = @charID and RefCharID between '23250' and '23257'or OwnerCharID = @charID and RefCharID between '23258' and '23265'or OwnerCharID = @charID and RefCharID between '23905' and '23912'endif exists (Select * from SRO_VT_SHARD.dbo._CharTrijob where CharID = @charIDand Contribution >= '3484407' and JobType = '3' and @char_ReqLevel >= '80' )begin exec SRO_VT_SHARD.._Add_ITEM_EXTERN @charnamejob,'ITEM_ETC_ARENA_COIN',10,10Update SRO_VT_SHARD.dbo._CharTrijob set Contribution = '1' where CharID = @charIDend -- orig 3484407if exists (Select * from SRO_VT_SHARD.dbo._CharTrijob where CharID = @charIDand Contribution >= '3484407' and JobType = '1' and @char_ReqLevel >= '80')begin exec SRO_Vt_SHARD.._Add_ITEM_EXTERN @charnamejob,'ITEM_ETC_ARENA_COIN',10,10Update SRO_VT_SHARD.dbo._CharTrijob set Contribution = '1' where CharID = @charIDendif exists (Select * from SRO_VT_SHARD.dbo._CharTrijob where CharID = @charIDand Contribution >= '3484407' and JobType = '2' and @char_ReqLevel >= '80') beginexec SRO_Vt_SHARD.._Add_ITEM_EXTERN @charnamejob,'ITEM_ETC_ARENA_COIN',10,10Update SRO_VT_SHARD.dbo._CharTrijob set Contribution = '1' where CharID = @charID
end
ثانى Query
كود:
USE [SRO_VT_LOG]GO/****** Object: StoredProcedure [dbo].[_Contribt] Script Date: 04/01/2015 19:00:03 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO
CREATE procedure [dbo].[_Contribt]@charID intas
Declare @contri int =(Select Contribution from SRO_VT_SHARD.dbo._CharTrijob where CharID= @charID )Update SRO_VT_SHARD.dbo._CharTrijob Set Contribution=0 where CharID =@charIDif not Exists (select * from SRO_VT_SHARD.dbo._CharTrIjob where CharID = @charID)begin insert into SRO_VT_SHARD.dbo._CharTrIjob (CharID , Contribution) Values (@charID, @contri) if Exists (select * from SRO_VT_SHARD.dbo._CharTrIjob where CharID = @charID) beginUpdate SRO_VT_SHARD.dbo._CharTrIjob Set Contribution=Contribution+ @contri where CharID= @charIDendend
ثالث Query
كود:
USE [SRO_VT_LOG]GO
/****** Object: Table [dbo].[_Contribution] Script Date: 25.02.2015 13:34:47 ******/SET ANSI_NULLS ONGO
SET QUOTED_IDENTIFIER ONGO
CREATE TABLE [dbo].[_Contribution]([Contribution] [int] NOT NULL,[CharID] [int] NOT NULL) ON [PRIMARY]
GO
رابع _AddLogChar
كود:
----_AddLogChar altna ekleme yapnz----
-- Main Declares DECLARE @GM_Prim int =(select sec_primary from SRO_VT_ACCOUNT.dbo.TB_User as us inner join SRO_VT_SHARD.dbo._User as us2 on us.JID = us2.UserJID where CharID = @charID) -- Contri Save- if @eventID= '4' begin Exec [_Contribt] @charID end -- Trade Gold Coins + Anti Cheat if @eventID = '6' and exists (Select * from SRO_VT_SHARD.dbo._CharTrijob where CharID = @charID and Contribution >= '2099235' ) begin Exec [dbo].[_JobCoins] @charID , @eventID end
-------------------------------------
السيستم عبارة عن :
لو جيت ترفع ايتم اكبر من +15 أو = +15
و Failed أو الأيتم Destroyed اختفت يعنى
هتسافر تلاقى معاك حاجات كأنها تعويض يعنى عن اللى حصلك
SRO_VT_SHARDLOG > Programility > _AddLogItem
كود:
if(@Operation = 41) And @strDesc_separado >= 15Begin
كود:
Declare @CharNameReward Varchar(64)select @CharNameReward =CharName16 from SRO_VT_SHARD.dbo._Char where CharID @CharID exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CharNameReward,'ITEM_EVENT_PREMIUM_VIETNAM_GOLDTIME_PLUS',1,1 exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CharNameReward,'ITEM_COS_P_CAT_SCROLL',1,1 exec SRO_VT_SHARD.._ADD_ITEM_EXTERN @CharNameReward,'ITEM_COS_P_FLUTE_WHITE_SMALL',1,1
End
هتغير الكود على حسب منتا عايز يجيلك ايه بقى
-------------------------------------
ولو حاجة جديد أتعملت هنعدل على على الموضوع
منقول للافادة
|