Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > 4Story
You last visited: Today at 23:32

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Error 1053 ! [TLogin]

Discussion on Error 1053 ! [TLogin] within the 4Story forum part of the MMORPGs category.

Reply
 
Old   #1
 
pipitt05000's Avatar
 
elite*gold: 0
Join Date: Mar 2010
Posts: 187
Received Thanks: 93
Question Error 1053 ! [TLogin]

Hi everyone ! Today, i want to play (localhost) to a private server, so i download all server files,ect...

All service start except TLogin, with 1053 error.

The registery are good (my local IP) and port 5336 (the same in TSERVER).

I know TLogin connect to SQL Server because there are request (So ODBC are good):



And this is my TGROUP, TIPADDR and TMACHINE:






Regedit:
Code:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TLOGIN_GSP\Config]
"DBPasswd"="asdf"
"DBUser"="sa"
"DSN"="TGLOBAL_GSP"
"Port"=dword:000014D8
"ServerID"=dword:00000001
"LogIP"="192.168.1.2"
"LogPort"=dword:00001b58
My ip is: 192.168.1.2
Port: 5336 !


If someone can help me...
Big Kiss !



EDIT: OK, all server running ! Juste uninstall service, réinstall with admin and start with admin, BUT... i have a problem:

I use "OldSchool" server, but when i connect it, TClient says "The given access data is incorrect" !
But the TLogin work because when the ID are wrong, it notified me...
TClient.exe must be patched ? It's the installer of Blade 4Story !

Someone have an good idea please ?
pipitt05000 is offline  
Old 06/16/2016, 20:27   #2
 
elite*gold: 0
Join Date: Sep 2013
Posts: 108
Received Thanks: 225
TServer->TLogin->CSHandler check LOGIN_REQ packet and returns
Crowlyseq is offline  
Old 06/16/2016, 21:41   #3
 
pipitt05000's Avatar
 
elite*gold: 0
Join Date: Mar 2010
Posts: 187
Received Thanks: 93
Code:
/*
 *	OnCS_LOGIN_REQ
 */
DWORD CTLoginSvrModule::OnCS_LOGIN_REQ(CSqlDatabase *pDB, LPMAPTGROUP pGROUP, CTUser *pUser, CPacket& packet)
{
	WORD wVersion;
	BYTE bChanneling = 0;
	INT64 dlCheck;
	INT64 llChecksum_recv;

	//	Check the Version
	packet >> wVersion;
	if( wVersion != 605 )
	{

		pUser->SendCS_LOGIN_ACK(LR_VERSION, 0, 0, 0, 0, 0, 0, 0, 0, 0);

		return EC_SESSION_INVALIDCHAR;
	}
	CString konstisfag;
	CString konstisfag2;
	CString konstisfag3;
	
	packet	>> konstisfag
			>> pUser->m_strPasswd
			>> konstisfag3
			>> konstisfag2
			>> pUser->m_strUserID
			>> dlCheck
			>> llChecksum_recv;

	if(m_hExecFile != INVALID_HANDLE_VALUE &&
		dlCheck != m_dlCheckFile)
	{
		LogExecCheck(pUser->m_dwID, 3, pUser->m_strUserID);
		return EC_SESSION_INVALIDCHAR;
	}

	if(m_bNation == NATION_JAPAN)
		packet >> bChanneling;

	//	Check the ID/Password Max Size
	if(pUser->m_strUserID.GetLength() > MAX_NAME ||
		pUser->m_strPasswd.GetLength() > MAX_NAME)
	{
			pUser->SendCS_LOGIN_ACK(LR_INTERNAL, 0, 0, 0, 0, 0, 0, 0, 0, 0);

			return EC_SESSION_INVALIDCHAR;
	}

	INT64 llChecksum;
	INT64 key = 0x336c3aebf71a8b08;

	llChecksum = wVersion * 2 - 500;

	INT64 dwIndex = llChecksum % sizeof(INT64);
	INT64 dwBody = llChecksum / sizeof(INT64);

	for(DWORD i = 0; i < dwIndex; i++)
	{
		llChecksum ^= dwBody;
		llChecksum += key;
	}

	if(llChecksum != llChecksum_recv)
	{
		return EC_SESSION_INVALIDCHAR;
	}

	BYTE bIPCheck = 0;
	//
	//	Check the IP Block
	//
	//	- Work : Parmater LR_IPBLOCK change
	//
	DEFINE_QUERY( pDB, CSPCheckIP)

	lstrcpy( query->m_szIPAddr, inet_ntoa(pUser->m_addr.sin_addr));

	if(query->Call())
	{
		bIPCheck = query->m_nRET;
		if(bIPCheck == LR_BLOCK)
		{
			pUser->SendCS_LOGIN_ACK(bIPCheck, 0, 0, 0, 0, 0, 0, 0, 0, 0);


#ifdef DEF_UDPLOG
			m_pUdpSocket->LogLogin(pUser, LR_IPBLOCK);
#endif

			return EC_SESSION_INVALIDCHAR;
		}
	}
	UNDEFINE_QUERY()
	
	pUser->m_dlCheckKey = TRand(0xFFFFFFFF) | (INT64(TRand(0xFFFFFFFF)) << 32);

	//	Check the ID/Password
	if(m_bNation == NATION_JAPAN)
	{
		DEFINE_QUERY( pDB, CSPLoginJP)

		lstrcpy( query->m_szUserID, LPCSTR(pUser->m_strUserID));
		lstrcpy( query->m_szPasswd, LPCSTR(pUser->m_strPasswd));
		lstrcpy( query->m_szLoginIP, inet_ntoa(pUser->m_addr.sin_addr));
		query->m_bChanneling = bChanneling;
		query->m_bIPCheck = bIPCheck;

		if(!query->Call())
			query->m_nRET = LR_INTERNAL;

	#ifdef DEF_UDPLOG
		m_pUdpSocket->LogLogin(pUser, query->m_nRET);
	#endif

		pUser->SendCS_LOGIN_ACK(
			query->m_nRET,
			query->m_dwID,
			query->m_dwCharID,
			query->m_dwKEY,
			query->m_szIPAddr ?
			inet_addr(query->m_szIPAddr) : 0,
			query->m_wPort,
			query->m_bCreateCnt,
			query->m_bInPcBang,
			query->m_dwPremium,
			CTime::GetCurrentTime().GetTime());

		switch(query->m_nRET)
		{
		case LR_DUPLICATE	:
			{
				SMART_LOCKCS(&m_csLI)

				MAPTUSER::iterator finder = m_mapTUSER.find(query->m_dwID);

				pUser->m_dwID = query->m_dwID;
				pUser->m_bLogout = TRUE;

				if( finder != m_mapTUSER.end() )
				{
					(*finder).second->m_bLogout = FALSE;

					CloseSession((*finder).second);
				}
				else if(query->m_dwCharID)
				{
					pUser->m_bLogout = FALSE;
				}
			}

			return EC_SESSION_INVALIDCHAR;

		case LR_NEEDAGREEMENT:
			pUser->m_bAgreement = FALSE;
		case LR_SUCCESS		:
			{
				SMART_LOCKCS(&m_csLI)

				pUser->m_dwID	 = query->m_dwID;
				pUser->m_bLogout = TRUE;
				pUser->m_bCreateCnt = query->m_bCreateCnt;
				pUser->m_dwAcceptTick = 0;

				m_mapTUSER.insert( MAPTUSER::value_type( pUser->m_dwID, pUser));

				MAPDWORD::iterator finder = m_mapACTIVEUSER.find(pUser->m_dwID);
				if( finder == m_mapACTIVEUSER.end() )
					m_mapACTIVEUSER.insert(MAPDWORD::value_type(pUser->m_dwID, pUser->m_dwID));
			}

			break;

		default				: return EC_SESSION_INVALIDCHAR;
		}
		UNDEFINE_QUERY()
	}
	else
	{
		DEFINE_QUERY( pDB, CSPLogin)

		lstrcpy( query->m_szUserID, LPCSTR(pUser->m_strUserID));
		lstrcpy( query->m_szPasswd, LPCSTR(pUser->m_strPasswd));
		lstrcpy( query->m_szLoginIP, inet_ntoa(pUser->m_addr.sin_addr));
		query->m_bIPCheck = bIPCheck;

		if(!query->Call())
			query->m_nRET = LR_INTERNAL;

	#ifdef DEF_UDPLOG
		m_pUdpSocket->LogLogin(pUser, query->m_nRET);
	#endif

		pUser->SendCS_LOGIN_ACK(
			query->m_nRET,
			query->m_dwID,
			query->m_dwCharID,
			query->m_dwKEY,
			query->m_szIPAddr ?
			inet_addr(query->m_szIPAddr) : 0,
			query->m_wPort,
			query->m_bCreateCnt,
			query->m_bInPcBang,
			query->m_dwPremium,
			CTime::GetCurrentTime().GetTime());

		
		switch(query->m_nRET)
		{
		case LR_DUPLICATE	:
			{
				SMART_LOCKCS(&m_csLI)

				MAPTUSER::iterator finder = m_mapTUSER.find(query->m_dwID);

				pUser->m_dwID = query->m_dwID;
				pUser->m_bLogout = TRUE;

				if( finder != m_mapTUSER.end() )
				{
					(*finder).second->m_bLogout = FALSE;

					CloseSession((*finder).second);
				}
				else if(query->m_dwCharID)
				{
					pUser->m_bLogout = FALSE;
				}
			}

			return EC_SESSION_INVALIDCHAR;

		case LR_NEEDAGREEMENT:
			pUser->m_bAgreement = FALSE;
		case LR_SUCCESS		:
			{	
				//m_pDebugSocket->LogLogin(pUser, query->m_dwID);

				SMART_LOCKCS(&m_csLI)

				pUser->m_dwID	 = query->m_dwID;
				pUser->m_bLogout = TRUE;
				pUser->m_bCreateCnt = query->m_bCreateCnt;
				pUser->m_dwAcceptTick = 0;
				//pUser->m_bLock = FALSE;
	
				if(m_hExecFile != INVALID_HANDLE_VALUE)
					pUser->m_qCheckPoint.push(0);

				m_mapTUSER.insert( MAPTUSER::value_type( pUser->m_dwID, pUser));

				MAPDWORD::iterator finder = m_mapACTIVEUSER.find(pUser->m_dwID);
				if( finder == m_mapACTIVEUSER.end() )
					m_mapACTIVEUSER.insert(MAPDWORD::value_type(pUser->m_dwID, pUser->m_dwID));

			}

			break;

		default				: return EC_SESSION_INVALIDCHAR;
		}
		UNDEFINE_QUERY()
	}

	return EC_NOERROR;
}
// 현승룡 CS_TESTLOGIN_REQ
DWORD CTLoginSvrModule::OnCS_TESTLOGIN_REQ( CSqlDatabase *pDB, LPMAPTGROUP pGROUP, CTUser *pUser, CPacket& packet)
{	
	DEFINE_QUERY( pDB, CSPTestLogin)
	
	EnterCriticalSection(&m_csLI);
	if(!query->Call())
		query->m_nRET = LR_INTERNAL;	
	LeaveCriticalSection(&m_csLI);
	
	pUser->m_strUserID = query->m_szUserID;
	pUser->m_strPasswd = query->m_szPasswd;

	ATLTRACE(_T("nRet:%d dwUserID:%d, UserID:%s, Passwd=%s\n"), query->m_nRET, query->m_dwID, pUser->m_strUserID, pUser->m_strPasswd);

	// Login 할 수 있는 ID가 없을 경우
	if( query->m_nRET == 1 )
	{
		pUser->SendCS_LOGIN_ACK(10, 0, 0, 0, 0, 0, 0, 0, 0, 0);
		return EC_SESSION_INVALIDCHAR;
	}	

	pUser->SendCS_LOGIN_ACK(
		query->m_nRET,
		query->m_dwID,
		query->m_dwCharID,
		query->m_dwKEY,
		query->m_szIPAddr ?
		inet_addr(query->m_szIPAddr) : 0,
		query->m_wPort,
		0, 0, 0, 0);	

	switch(query->m_nRET)
	{	
	case LR_SUCCESS		:
		{
			SMART_LOCKCS(&m_csLI)

			pUser->m_dwID = query->m_dwID;
			pUser->m_bLogout = TRUE;

			m_mapTUSER.insert( MAPTUSER::value_type( pUser->m_dwID, pUser));
			
			MAPDWORD::iterator finder = m_mapACTIVEUSER.find(pUser->m_dwID);
			if( finder == m_mapACTIVEUSER.end() )
                m_mapACTIVEUSER.insert(MAPDWORD::value_type(pUser->m_dwID, pUser->m_dwID));
		}
		break;

	default				: return EC_SESSION_INVALIDCHAR;
	}
	UNDEFINE_QUERY()

	return EC_NOERROR;
}
Oookay i have this ! x)
pipitt05000 is offline  
Old 06/27/2016, 06:10   #4
 
djcovi56's Avatar
 
elite*gold: 0
Join Date: Sep 2012
Posts: 40
Received Thanks: 6
Do u Have 64-Bit system if yes do the ODBC over syswow64 (windows folder)
C: > Windows > SysWOW64 > ODBC > done
djcovi56 is offline  
Thanks
1 User
Old 06/27/2016, 10:12   #5
 
pipitt05000's Avatar
 
elite*gold: 0
Join Date: Mar 2010
Posts: 187
Received Thanks: 93
Yes ! The solution was simple: configure ODBC 64 & 32, but not the Windows Connection ! Juste the "sa" & "asdf" code... And it works ! O.o
pipitt05000 is offline  
Old 06/27/2016, 11:09   #6
 
djcovi56's Avatar
 
elite*gold: 0
Join Date: Sep 2012
Posts: 40
Received Thanks: 6
...nice have fun
djcovi56 is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
TLOGIN ERROR
01/24/2015 - 4Story - 2 Replies
hello community i have this problem can you help me ? Screenshot by Lightshot
TLOGIN ERROR
03/29/2014 - 4Story - 13 Replies
Hello guys,i have a big problem with TLOGIN on 4.3 patch. I login work something like 25-30 minutes and after is down,can someone tell me what can i Do. I try to replace with a old tlogin but after i can`t login in game anymore. Thank you in advance for help.



All times are GMT +1. The time now is 23:32.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.