[Help] How to add more PvP ranks / kill

08/08/2012 13:44 Dreams123#1
Hey guys,

I need some help, my server has a x10 kill ratio, and also, I have alot of Purple stars already. Does anyone know how to add MORE PvP ranks and more kills (like a million in OS).

Would love if someone could help me out here!

Lotsa loves

Dreams

(P.S.) if someone could help me with how to fix Duping ingame + Cheat engine, I would love to get some help from that!
08/08/2012 18:36 Murik13#2
[Only registered and activated users can see links. Click Here To Register...] its dupe fix
08/08/2012 19:15 JohnHeatz#3
That is specifically for the Dupe done with packets, the common dupe is done by fixing your login/logout SPs on your database though
08/08/2012 19:42 JuuF#4
These are from Admin Panel and yes they all do work you will have dupe fix.This is the easiest way to prevent duping (not packed based one).


Action Log one :

Code:
USE [PS_GameLog]
GO
/****** Object:  StoredProcedure [dbo].[usp_Insert_Action_Log_E]    Script Date: 02/07/2012 19:12:56 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER  Proc [dbo].[usp_Insert_Action_Log_E]

@UserID varchar(18),
@UserUID int,
@CharID int,
@CharName varchar(50),
@CharLevel tinyint,
@CharExp int,
@MapID smallint,
@PosX real,
@PosY real,
@PosZ real,
@ActionTime datetime,
@ActionType tinyint,
@Value1 bigint = null,
@Value2 int = null,
@Value3 int = null,
@Value4 bigint = null,
@Value5 int = null,
@Value6 int = null,
@Value7 int = null,
@Value8 int = null,
@Value9 int = null,
@Value10 int = null,
@Text1 varchar(100) = '',
@Text2 varchar(100) = '',
@Text3 varchar(100) = '',
@Text4 varchar(100) = '',
@Sql nvarchar(4000) = '',
@yyyy varchar(4) = '',
@mm varchar(2) = '',
@dd varchar(2) = '',
@Bucket smallint = -1
AS
DECLARE @CharLeave int

SET @yyyy = datepart(yyyy, @ActionTime)
SET @mm = datepart(mm, @ActionTime)
SET @dd = datepart(dd, @ActionTime)
SET @CharLeave = 1

IF @ActionType = '116'--Trade Item-remove item from originator
BEGIN
    WAITFOR DELAY '00:00:05'--Time delay to give the duper time to log out fully
    
    SELECT @CharLeave=Leave
    FROM PS_userdata.dbo.Users_Master
    WHERE UserUID=@UserUID

    IF @CharLeave=0
    BEGIN
        EXEC PS_GameData.dbo.usp_Save_Char_Item_Del_E @CharID=@CharID, @IDList=@Value1
    END
END

IF @ActionType = '164'--Trade Gold-remove gold from originator
BEGIN

    WAITFOR DELAY '00:00:05'--Time delay to give the duper time to log out fully

    SELECT @CharLeave=Leave
    FROM PS_userdata.dbo.Users_Master
    WHERE UserUID=@UserUID

    IF @CharLeave=0
    BEGIN
        UPDATE PS_GameData.dbo.Chars
        SET [Money]=@Value2
        WHERE PS_GameData.dbo.Chars.CharID=@CharID
    END
END

DECLARE
@DIP varchar (100),
@UID varchar (100),
@KIP Varchar (100)

IF (@ActionType = 103)

BEGIN
SELECT @UID = um.UserID FROM PS_UserData.dbo.Users_Master as um 
INNER JOIN PS_GameData.dbo.Chars as c ON c.UserUID = um.UserUID 
inner join PS_GameLog.dbo.ActionLog as a  on a.Value1 = c.CharID Where c.CharID = @Value1 AND ActionType = 103

SELECT @KIP = um.UserIp FROM PS_UserData.dbo.Users_Master as um 
INNER JOIN PS_GameData.dbo.Chars as c ON c.UserUID = um.UserUID 
inner join PS_GameLog.dbo.ActionLog as a  on a.Value1 = c.CharID Where c.CharID = @Value1 AND ActionType = 103

Select @DIP = um.UserIP FROM PS_UserData.dbo.Users_Master as um
INNER JOIN PS_GameLog.dbo.ActionLog as a on um.UserID = a.UserID WHERE um.UserID=@UserID AND ActionType = 103

IF @DIP = @KIP

INSERT INTO GM_Stuff.dbo.StatPadder (DeadToon,DeadIP,DeadID,KillerToon,KillerIP,KillerID,Date,Map)
VALUES (@Text1,@KIP,@UID,@CharName,@DIP,@UserID,@ActionTime,@MapID)
END
BEGIN
INSERT INTO PS_GameLog.dbo.ActionLog
(UserID, UserUID, CharID, CharName, CharLevel, CharExp, MapID,  PosX, PosY, PosZ, ActionTime, ActionType, 
Value1, Value2, Value3, Value4, Value5, Value6, Value7, Value8, Value9, Value10, Text1, Text2, Text3, Text4)
VALUES(@UserID, @UserUID, @CharID, @CharName, @CharLevel, @CharExp, @MapID, @PosX, @PosY, @PosZ, @ActionTime, @ActionType, 
@Value1, @Value2, @Value3, @Value4, @Value5, @Value6, @Value7, @Value8, @Value9, @Value10, @Text1, @Text2, @Text3, @Text4)
END


login one :

Code:
USE [PS_UserData]
GO
/****** Object:  StoredProcedure [dbo].[usp_Try_GameLogin_Taiwan]    Script Date: 02/07/2012 19:09:52 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER  Proc [dbo].[usp_Try_GameLogin_Taiwan]

@UserID 	varchar(18),
@InPassword	varchar(32),
@SessionID 	bigint,
@UserIP 	varchar(15),
@UserUID 	int = 0,
@LoginType 	smallint = 1, 
@LoginTime 	datetime = NULL

AS

SET NOCOUNT ON

DECLARE 

@Leave 		tinyint,
@Status 		smallint,
@CompanyIP 	varchar(15),
@TempIP 	varchar(15),
@Check		int,
@UseQueue	int,
@TimeReleased datetime,
@LeaveDate  datetime

SET @Status =		 -1
SET @LoginTime = 	GETDATE()

--------------------------------------------------
SET @CompanyIP = 	'61.107.81'
SET @UserIP =		LTRIM( RTRIM(@UserIP) )
--------------------------------------------------
SET @Check = 0
--------------------------------------------------
--Check for IP ban, if so set the status of the user to banned.
IF(SELECT COUNT(*) FROM [GM_Stuff].[dbo].[BannedIP] where [IP1] = @UserIP) > 0
BEGIN
	SET @Status = -2
	UPDATE PS_UserData.dbo.Users_Master SET [Status] = @Status WHERE UserID = @UserID	
END
IF(SELECT COUNT(*) FROM PS_UserData.dbo.Users_Master where [UserIp] = @UserIP and [Status] = '-2') > 0
BEGIN
-- if previous section returns results witch means the ip is attatched to an account previously ip banned
	IF(SELECT COUNT(*) FROM [GM_Stuff].[dbo].[BannedIP] where [UserID] = @UserID) > 0
	UPDATE [GM_Stuff].[dbo].[BannedIP] SET [LogAtempt] = 'TRUE' WHERE UserID = @UserID 
	Else  INSERT INTO [GM_Stuff].[dbo].[BannedIP] (UserID,BanDate,IP1,StaffID,StaffIP,[LogAtempt])  
	Values (@UserID,GETDATE(),@UserIP,'Log','127.0.0.1','TRUE')
END
--Check if 3day and 14day banments are ready for release then do so if ready
SELECT @TimeReleased = TimeReleased From GM_Stuff.dbo.BannedAccounts Where UserID = @UserID
IF ( @TimeReleased < GETDATE()) 
BEGIN
	UPDATE PS_UserData.dbo.Users_Master SET [Status] = 0 WHERE UserID=@UserID
	DELETE FROM GM_Stuff.dbo.BannedAccounts WHERE UserID=@UserID
END

SELECT @UserUID=UserUID, @Status=Status,@UseQueue=UseQueue, @Leave=Leave FROM Users_Master WHERE UserID = @UserID

-- NotExist User OR Leave User
IF( @UserUID = 0 OR @Leave = 1 )
BEGIN
	SET @Status = -3
END
-- Dupe fix section
ELSE IF (@Leave = 1) --This blocks a logged in account from being kicked
BEGIN
    SET @Status = -5
END
ELSE IF (DATEDIFF(SECOND, @LeaveDate, GETDATE()) < 6)--This is the time delay
BEGIN
    SET @Status = -7
END
-- verified email at regestration check
--ELSE IF (@UseQueue='0')
--BEGIN
--SET @Status= -7
--END

ELSE
BEGIN
	-- Check Password
	EXEC dbo.sp_LoginSuccessCheck @UserID, @InPassword, @Check output
	IF ( @@ERROR = 0 )
	BEGIN
		IF( @Check <> 1 )
		BEGIN
			SET @Status = -1
		END
	END
	ELSE
	BEGIN
		SET @Status = -1
	END
END

-- Select 
SELECT @Status AS Status, @UserUID AS UserUID

-- Log Insert
IF( @Status = 0 OR @Status = 16 OR @Status = 32 OR @Status = 48 OR @Status = 64 OR @Status = 80 )
BEGIN
    UPDATE Users_Master SET Leave = 1, JoinDate = GETDATE() WHERE UserUID = @UserUID
END

BEGIN
	EXEC usp_Insert_LoginLog_E @SessionID=@SessionID, @UserUID=@UserUID, @UserIP=@UserIP, @LogType=0, @LogTime=@LoginTime, @LoginType=@LoginType
END
BEGIN 
	UPDATE PS_UserData.dbo.Users_Master set UserIp = @UserIP WHERE UserID = @UserID
END
SET NOCOUNT OFF

logout one :

Code:
USE [PS_UserData]
GO
/****** Object:  StoredProcedure [dbo].[usp_Try_GameLogout_R]    Script Date: 02/07/2012 19:10:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/****** Object:  Stored Procedure dbo.usp_Try_GameLogout_R    Script Date: 2008-6-7 18:34:05 ******/
ALTER        Proc [dbo].[usp_Try_GameLogout_R]

@UserUID int,
@SessionID bigint,
@LogoutType smallint = 0,
@ErrType int = 0

AS

SET NOCOUNT ON

DECLARE @LogTime datetime
DECLARE @Sql nvarchar(4000)
DECLARE @yyyy varchar(4)
DECLARE @mm varchar(2)
DECLARE @dd varchar(2)
DECLARE @LogType bit	-- Login:0, Logout:1

SET @LogType = 1
SET @LogTime = GETDATE()
SET @yyyy = DATEPART(yyyy, @LogTime)
SET @mm = DATEPART(mm, @LogTime)
SET @dd = DATEPART(dd, @LogTime)

IF( LEN(@mm) = 1 )
BEGIN
	SET @mm = '0' + @mm
END

IF( LEN(@dd) = 1 )
BEGIN
	SET @dd = '0' + @dd
END

UPDATE Users_Master SET Leave = 0, LeaveDate = GETDATE() WHERE UserUID = @UserUID

UPDATE PS_GameLog.dbo.UserLog
SET LogoutTime=@LogTime, LogoutType=@LogoutType, LogoutErrType=@ErrType
WHERE UserUID=@UserUID AND SessionID=@SessionID


SET @Sql = N'
INSERT INTO PS_GameLog.dbo.UserLog
(SessionID, UserUID, LogType, LogTime, LogoutType, ErrType)
VALUES(@SessionID, @UserUID, @LogType, @LogTime, @LogoutType, @ErrType)'

EXEC sp_executesql @Sql, 
N'@SessionID bigint, @UserUID int, @LogType bit, @LogTime datetime, @LogoutType smallint, @ErrType int',
@SessionID, @UserUID, @LogType, @LogTime, @LogoutType, @ErrType

SET NOCOUNT OFF

Credits goes to Dash for his awesome release.
08/08/2012 19:42 Dreams123#5
Thanks for the duping, I got it now :D anyone has a idea for the cheat engine stop and extra PvP ranks?
08/08/2012 20:32 benoli105#6
lmao juuf i ran ur 3 scripts and now when i try to log in it says " account does not exist "
08/08/2012 21:03 JuuF#7
first they're not my own scripts, second they work like a charm to me :) just tested again, maybe database difference.. he asked for help and i gave what i use, nothing different :) so im sorry about your problem :x
08/08/2012 21:35 benoli105#8
well if thats not your scipt no need to be sorry // i fixed the prob
08/08/2012 21:40 JuuF#9
Can you post the Fix of problem that you got? :) it will help to others for sure ;)
08/08/2012 22:10 Dreams123#10
Well, cool, but is there anyone who can help me with my problem?

How to add more PvP ranks

How to denied cheat engine to work on my server

Thanks
08/08/2012 22:18 JuuF#11
I found a "work-around" about pvp ranks o,o i will post whole information once i finish it but im not sure if it is healthy so i will post once i finish and test everything.. also kinda found a way to add more image than Purple Star that we got (200.000 kills). Again, im not sure if it is healthy :)
[Only registered and activated users can see links. Click Here To Register...]
08/08/2012 22:21 Dreams123#12
Would love if you give it a try. Thank you very much already :D

Dreams
08/08/2012 23:30 JohnHeatz#13
I don't think there is a way to completely block CE to work, if there is I would bet it would consist on a huge customization of the game using OllyDBG, yet again, I don't really think that you can completely block it
08/09/2012 17:07 Dreams123#14
Thanks, well I hope someone could make me a script or anything like that. And I hope you guys can get those PvP ranks working and put it online.

Thanks

Dreams