Jump to content

Recommended Posts

Posted
27 minutes ago, menma said:

I used run.bat ai.nasc from cmd console.

 

I try to make it by using l2npc.exe -c -e ai.nasc and have same result.

 

Did you get it to compile? What version of Windows server do you have? I am using windows 2016 but the compiler for Gracia worked fine.

 

UPD: The problem is solved, need to compile with standard scripts. The problem with re-login to the account remains.

that is correct.... I did no test relog, i'm still working in the ai and npcpos, Then I do a test and post

Posted
3 minutes ago, Mechas said:

that is correct.... I did no test relog, i'm still working in the ai and npcpos, Then I do a test and post

void CAuthD::SaveUserDataAndLogout(int nAccountID,int nUnk1,int nUnk2)
{
	typedef void (CAuthD::*t)(int,int,int);
	SET_INSTANCE_METHOD_ADDR(t, 0x45C00CL);
	CALL_INSTANCE_METHOD(nAccountID,nUnk1,nUnk2);
}

void CAuthD::RequestLogout(int nAccountID,int nUnk1,int nUnk2)
{
	typedef void (CAuthD::*t)(int,int,int);
	SET_INSTANCE_METHOD_ADDR(t, 0x45BE50L);
	CALL_INSTANCE_METHOD(nAccountID,nUnk1,nUnk2);
}

bool CAuthD::OnRequestLogin(wchar_t * sAccountName,int nAccountID,int nGameSessionID,int nAccountID2,int nAuthSessionID,CUserSocket *pSocket)
{
	TLS_TRACE_FUNCTION;	

	if(nGameSessionID == 0 || nAuthSessionID == 0 || nAccountID != nAccountID2)
	{	
		CLog::Add(CLog::red,L"Wrong account session! account_id(%d) GameSessionID[%d] AccountID2[%d] AuthSessionID[%d]",nAccountID,nGameSessionID,nAccountID2,nAuthSessionID);
		pSocket->ForceClose(6);
		return false;
	}

	g_AuthSessionLock->WriteLock(__WFILE__,__LINE__);
	bool bSessionError = false;
	IntIntMap::iterator iter = g_AuthAccountSessionMap->find(nAccountID);
	if(iter != g_AuthAccountSessionMap->end())
	{		
		if (nGameSessionID != iter->second)
		{
			bSessionError = true;		
			CLog::Add(CLog::red,L"Wrong account session! account_id(%d) session[%d] != [%d]",nAccountID,nGameSessionID,iter->second);
		}
	}
	else
	{
		bSessionError = true;
		CLog::Add(CLog::red,L"Account session not found! account_id(%d) session[%d]",nAccountID,nGameSessionID);
	}
	g_AuthSessionLock->WriteUnlock();

	if(bSessionError)
	{
		pSocket->ForceClose(6);
		return false;
	}

	CPremiumService::I()->RequestPremiumState(pSocket->GetSocketUID(), nAccountID);

	typedef bool (CAuthD::*t)(wchar_t *,int,int,int,int,CUserSocket *);
	SET_INSTANCE_METHOD_ADDR(t, 0x45B648L);
	return CALL_INSTANCE_METHOD(sAccountName,nAccountID,nGameSessionID,nAccountID2,nAuthSessionID,pSocket);
}

 

hfdll.dll have this

Posted
2 minutes ago, menma said:

void CAuthD::SaveUserDataAndLogout(int nAccountID,int nUnk1,int nUnk2)
{
	typedef void (CAuthD::*t)(int,int,int);
	SET_INSTANCE_METHOD_ADDR(t, 0x45C00CL);
	CALL_INSTANCE_METHOD(nAccountID,nUnk1,nUnk2);
}

void CAuthD::RequestLogout(int nAccountID,int nUnk1,int nUnk2)
{
	typedef void (CAuthD::*t)(int,int,int);
	SET_INSTANCE_METHOD_ADDR(t, 0x45BE50L);
	CALL_INSTANCE_METHOD(nAccountID,nUnk1,nUnk2);
}

bool CAuthD::OnRequestLogin(wchar_t * sAccountName,int nAccountID,int nGameSessionID,int nAccountID2,int nAuthSessionID,CUserSocket *pSocket)
{
	TLS_TRACE_FUNCTION;	

	if(nGameSessionID == 0 || nAuthSessionID == 0 || nAccountID != nAccountID2)
	{	
		CLog::Add(CLog::red,L"Wrong account session! account_id(%d) GameSessionID[%d] AccountID2[%d] AuthSessionID[%d]",nAccountID,nGameSessionID,nAccountID2,nAuthSessionID);
		pSocket->ForceClose(6);
		return false;
	}

	g_AuthSessionLock->WriteLock(__WFILE__,__LINE__);
	bool bSessionError = false;
	IntIntMap::iterator iter = g_AuthAccountSessionMap->find(nAccountID);
	if(iter != g_AuthAccountSessionMap->end())
	{		
		if (nGameSessionID != iter->second)
		{
			bSessionError = true;		
			CLog::Add(CLog::red,L"Wrong account session! account_id(%d) session[%d] != [%d]",nAccountID,nGameSessionID,iter->second);
		}
	}
	else
	{
		bSessionError = true;
		CLog::Add(CLog::red,L"Account session not found! account_id(%d) session[%d]",nAccountID,nGameSessionID);
	}
	g_AuthSessionLock->WriteUnlock();

	if(bSessionError)
	{
		pSocket->ForceClose(6);
		return false;
	}

	CPremiumService::I()->RequestPremiumState(pSocket->GetSocketUID(), nAccountID);

	typedef bool (CAuthD::*t)(wchar_t *,int,int,int,int,CUserSocket *);
	SET_INSTANCE_METHOD_ADDR(t, 0x45B648L);
	return CALL_INSTANCE_METHOD(sAccountName,nAccountID,nGameSessionID,nAccountID2,nAuthSessionID,pSocket);
}

 

hfdll.dll have this

No problem with relog, try no use dll russian shit, use only eressea extender, and diferent auth, try use clean system client.

Posted
9 minutes ago, Mechas said:

No problem with relog, try no use dll russian shit, use only eressea extender, and diferent auth, try use clean system client.

I used eressea extender and hint auth. Clean system 273p.

Posted (edited)
2 hours ago, menma said:

what authd are you using?I download 

 

but it did not help.

error.jpg

EDIT: Scratch that, I'm using the patched hauthD too. What's happening when you use it?

Edited by Bumble
Posted (edited)
20 minutes ago, Bumble said:

EDIT: Scratch that, I'm using the patched hauthD too. What's happening when you use it?

It looks like the server is not sending a packet to the login that I have logged out. The client closes, but the login server shows that I am still online.

 

How are you with logging out and logging in to one account, is everything okay?

Edited by menma
Posted (edited)
15 minutes ago, zconll said:

I am using too HAuthd , all work good, i can reloging, i can to send you my HAuthd if you need.

If you can, send all your binary. I try to watch what is this. Ty.

Bacause i dont khow, change l2server dll name and import dll in other binary its all what i do.

Edited by menma
Posted
7 hours ago, menma said:

what authd are you using?I download 

 

but it did not help.

error.jpg

Sorry i'm working, I can see you resolve the problem, really what happend, i do not know, I use russian pack, and last ver. eressea extender.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




  • Posts

    • why ban him, his name almost ressurected the forum   haiku: Kara walks in light, whispers drift like soft spring rain, time bows at his steps.   Arrays.stream(DeveloperBrain.getInstance().getThoughts()) .filter(Kara.class::isInstance) .map(Kara.class::cast) .filter(k -> Objects.nonNull(k.getCoffeeLevel())) .flatMap(k -> k.getExcuses().stream().map(e -> Map.entry(k, e))) .filter(e -> Optional.ofNullable(StackOverflow.getAnswerById( DeveloperBrain.getVariables().getInt("kara_ban_counter", 0))) .map(a -> a.isActuallyHelpful() == false) .orElse(true)) .findFirst() .filter(r -> Optional.ofNullable(Admin.getPatience()) .filter(p -> Admin.destroyPatience("KaraBanProcess", 1, true)) .isPresent()) .ifPresentOrElse(e -> { Admin.sendPacket(SystemMessage.sendString("Kara has been banned again.")); Admin.sendPacket(Sound.ITEMSOUND_ENCHANT_FAILURE.getPacket()); Admin.sendPacket(new MagicSkillUse(Admin, Kara.class, CommonSkill.BANHAMMER.getId(), 999, 1, 0)); }, () -> Admin.sendPacket(SystemMessage.sendString("Miracle! Kara survived without a ban... this time.")));
    • decrypt and encrypt is works...          
    • well,thx for your reply...i had solved my problem.its source data errors...the old Armorgrp.dat and Armorgrp-classic.dat exist errors...rly swired. about skillgrp-classic.dat,i decrypt and encrypt it,it works...but in Grand Crusade i didnot know if it exist Auto-cast.   BTW,i rly dont know why the Original .dat files exist lots errors.but my Client works good...rly sweird.   anyway,i didnot like Mobius L2ClientDat tool...but we need use it...coz there is no other tools to work with new l2 client. 客户端工具很难用,解密后加密不回去的,哪怕你不做任何修改都加密不回去。你可以试试台版客户端就知道了。
    • sell adena l2rebon signature x1 - 1kk = 1 dollars l2reborn x10 - 500kk = 4 dollars E-Global x Lu4 - 1kk = 2 dollars BOHPTS - x20-x500 TOP PRICE LINEAGE2DEX - TOP PRICE !!!!! DISCORD - GODDARDSHOP TELEGRAM - MMOPROMO Also on sale are Epic jewelry, Clothes at a very good price
    • I will search for.
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock