help i can't open my server on other pc

03/02/2015 03:01 ramyattallah#1
hello i need some help here

i make my server and it work good i use hamachi
when i try open game on other pc , i use hamachi on other and make room and join to it and game start
i write ID and PW i got Account already online try again after 5 min
i can open only one Account how i can fix it

[Only registered and activated users can see links. Click Here To Register...]
03/02/2015 17:26 Devsome#2
Just create a new account in the database.
When the same User already connected, the same ID & PW are connected :awesome:
03/02/2015 17:46 ramyattallah#3
Quote:
Originally Posted by Devsome View Post
Just create a new account in the database.
When the same User already connected, the same ID & PW are connected :awesome:
i already create new account but i got same error
03/02/2015 17:51 Devsome#4
It can not be the same error.
Create a new Account then try to restart the whole server, check if the user still exist in the database and retry it.
03/02/2015 18:40 Memoirs#5
You are using csro files. This error causes when you create accounts with the same certificate_num.
Execute this procedure on your account database to bypass it.

Code:
USE [SRO_R_AccountDB]
GO
/****** Object:  StoredProcedure [dbo].[_CertifyTB_User]    Script Date: 03/02/2015 17:39:42 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO


ALTER   PROCEDURE [dbo].[_CertifyTB_User]
	@szUserID	varchar(25),
	@szPassword	varchar(50)
AS
	declare @nUserJID 			int
	declare @sec_primary 			tinyint
	declare @sec_content 			tinyint
	declare @AccPlayTime 			int
	declare @LatestUpdateTime_ToPlayTime 	int
	declare @IsAdult 				tinyint  -- int형 필요 없음
-- ifdef SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
	declare @Email					varchar(50)	
	declare @EmailValidate			tinyint
-- endif SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN

	set	@nUserJID						= 0
	set	@sec_primary					= 0
	set	@sec_content					= 0
	set @AccPlayTime 					= 0
	set @LatestUpdateTime_ToPlayTime 	= 0
	set	@IsAdult						= 0
-- ifdef SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
	set	@Email							= null
	set	@EmailValidate					= 0
-- endif SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN

	select 	@nUserJID = JID, 
		@sec_primary = sec_primary, 
		@sec_content = sec_content, 
		@AccPlayTime = AccPlayTime, 
		@LatestUpdateTime_ToPlayTime = LatestUpdateTime_ToPlayTime,
-- ifdef SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
		@Email	= Email,
		@EmailValidate	= EmailValidate
-- endif SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN	
		from TB_User
	
	where StrUserID = @szUserID and password = @szPassword
--set @EmailValidate=0
	if( @nUserJID = 0 or @nUserJID is null or @@error <> 0 or @@rowcount = 0)
	begin
		--select convert( tinyint, 1), convert( int, 0), convert( tinyint, 0), convert( tinyint, 0), convert( tinyint, 0), convert(datetime, 0), convert(bigint, 0)
		select convert( tinyint, 1), convert( int, 0), convert( tinyint, 0), convert( tinyint, 0), convert( tinyint, 0), convert(datetime, 0), convert(bigint, 0), convert(tinyint, 0)
		return
	end
	if( exists( select Type from _BlockedUser where UserJID = @nUserJID and Type = 1 and getdate() between timeBegin and timeEnd))
	begin
		--select convert( tinyint, 3), @nUserJID, convert( tinyint, 0), convert( tinyint, 0), convert( tinyint, 0), convert(datetime, 0), convert(bigint, 0)
		select convert( tinyint, 3), @nUserJID, convert( tinyint, 0), convert( tinyint, 0), convert( tinyint, 0), convert(datetime, 0), convert(bigint, 0), convert(tinyint, 0)
		return
	end

	------------
	declare @ssn bigint
	declare @max_playtime int
	declare @max_latestUpdateTime int
	declare @max_totalLoggedOutTime int
	declare @max_lastLoggedOutTime	datetime
	declare @certf varchar(60)	

	select 	@max_playtime = max(AccPlayTime), 
		@max_latestUpdateTime = max(LatestUpdateTime_ToPlayTime), 
		@max_totalLoggedOutTime = max(TotalLoggedOutTime),
		@max_lastLoggedOutTime	= max(LastLoggedOutTime)
		from TB_User

	
	--select convert(tinyint, 0), @nUserJID, @sec_primary, @sec_content, @AccPlayTime, @max_LatestUpdateTime, @max_totalLoggedOutTime, @max_lastLoggedOutTime, @ssn
	--select convert(tinyint, 0), @nUserJID, @sec_primary, @sec_content, @AccPlayTime, @max_LatestUpdateTime, @max_totalLoggedOutTime, @max_lastLoggedOutTime, @ssn, @IsAdult
	
	-- ifdef SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
	select convert(tinyint, 0), @nUserJID, @sec_primary, @sec_content, @AccPlayTime, @max_LatestUpdateTime, @max_totalLoggedOutTime, @max_lastLoggedOutTime, @ssn, @IsAdult, @Email, @EmailValidate
	-- endif SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
-- print @EmailValidate
	return
03/03/2015 22:34 ramyattallah#6
Quote:
Originally Posted by Memoirs View Post
You are using csro files. This error causes when you create accounts with the same certificate_num.
Execute this procedure on your account database to bypass it.

Code:
USE [SRO_R_AccountDB]
GO
/****** Object:  StoredProcedure [dbo].[_CertifyTB_User]    Script Date: 03/02/2015 17:39:42 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO


ALTER   PROCEDURE [dbo].[_CertifyTB_User]
	@szUserID	varchar(25),
	@szPassword	varchar(50)
AS
	declare @nUserJID 			int
	declare @sec_primary 			tinyint
	declare @sec_content 			tinyint
	declare @AccPlayTime 			int
	declare @LatestUpdateTime_ToPlayTime 	int
	declare @IsAdult 				tinyint  -- int형 필요 없음
-- ifdef SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
	declare @Email					varchar(50)	
	declare @EmailValidate			tinyint
-- endif SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN

	set	@nUserJID						= 0
	set	@sec_primary					= 0
	set	@sec_content					= 0
	set @AccPlayTime 					= 0
	set @LatestUpdateTime_ToPlayTime 	= 0
	set	@IsAdult						= 0
-- ifdef SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
	set	@Email							= null
	set	@EmailValidate					= 0
-- endif SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN

	select 	@nUserJID = JID, 
		@sec_primary = sec_primary, 
		@sec_content = sec_content, 
		@AccPlayTime = AccPlayTime, 
		@LatestUpdateTime_ToPlayTime = LatestUpdateTime_ToPlayTime,
-- ifdef SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
		@Email	= Email,
		@EmailValidate	= EmailValidate
-- endif SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN	
		from TB_User
	
	where StrUserID = @szUserID and password = @szPassword
--set @EmailValidate=0
	if( @nUserJID = 0 or @nUserJID is null or @@error <> 0 or @@rowcount = 0)
	begin
		--select convert( tinyint, 1), convert( int, 0), convert( tinyint, 0), convert( tinyint, 0), convert( tinyint, 0), convert(datetime, 0), convert(bigint, 0)
		select convert( tinyint, 1), convert( int, 0), convert( tinyint, 0), convert( tinyint, 0), convert( tinyint, 0), convert(datetime, 0), convert(bigint, 0), convert(tinyint, 0)
		return
	end
	if( exists( select Type from _BlockedUser where UserJID = @nUserJID and Type = 1 and getdate() between timeBegin and timeEnd))
	begin
		--select convert( tinyint, 3), @nUserJID, convert( tinyint, 0), convert( tinyint, 0), convert( tinyint, 0), convert(datetime, 0), convert(bigint, 0)
		select convert( tinyint, 3), @nUserJID, convert( tinyint, 0), convert( tinyint, 0), convert( tinyint, 0), convert(datetime, 0), convert(bigint, 0), convert(tinyint, 0)
		return
	end

	------------
	declare @ssn bigint
	declare @max_playtime int
	declare @max_latestUpdateTime int
	declare @max_totalLoggedOutTime int
	declare @max_lastLoggedOutTime	datetime
	declare @certf varchar(60)	

	select 	@max_playtime = max(AccPlayTime), 
		@max_latestUpdateTime = max(LatestUpdateTime_ToPlayTime), 
		@max_totalLoggedOutTime = max(TotalLoggedOutTime),
		@max_lastLoggedOutTime	= max(LastLoggedOutTime)
		from TB_User

	
	--select convert(tinyint, 0), @nUserJID, @sec_primary, @sec_content, @AccPlayTime, @max_LatestUpdateTime, @max_totalLoggedOutTime, @max_lastLoggedOutTime, @ssn
	--select convert(tinyint, 0), @nUserJID, @sec_primary, @sec_content, @AccPlayTime, @max_LatestUpdateTime, @max_totalLoggedOutTime, @max_lastLoggedOutTime, @ssn, @IsAdult
	
	-- ifdef SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
	select convert(tinyint, 0), @nUserJID, @sec_primary, @sec_content, @AccPlayTime, @max_LatestUpdateTime, @max_totalLoggedOutTime, @max_lastLoggedOutTime, @ssn, @IsAdult, @Email, @EmailValidate
	-- endif SYSTEM_EMAIL_CERTIFICATION_NOTUSE_CGI_LOGIN
-- print @EmailValidate
	return
i Execute it but still have same problem when i try log in two PC one char log in and other Account got already online