Mechas Posted February 27, 2021 Posted February 27, 2021 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 Quote
menma Posted February 27, 2021 Posted February 27, 2021 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 Quote
Mechas Posted February 27, 2021 Posted February 27, 2021 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. Quote
menma Posted February 27, 2021 Posted February 27, 2021 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. Quote
Mechas Posted February 27, 2021 Posted February 27, 2021 19 minutes ago, menma said: I used eressea extender and hint auth. Clean system 273p. Again try diff authd xD Quote
menma Posted February 27, 2021 Posted February 27, 2021 Just now, Mechas said: Again try diff authd xD what authd are you using?I download but it did not help. Quote
SWnet Posted February 27, 2021 Posted February 27, 2021 (edited) system High Five 1 minute ago, SWnet said: Edited February 27, 2021 by SWnet Quote
Bumble Posted February 27, 2021 Posted February 27, 2021 (edited) 2 hours ago, menma said: what authd are you using?I download but it did not help. EDIT: Scratch that, I'm using the patched hauthD too. What's happening when you use it? Edited February 27, 2021 by Bumble Quote
menma Posted February 27, 2021 Posted February 27, 2021 (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 February 27, 2021 by menma Quote
zconll Posted February 27, 2021 Posted February 27, 2021 I am using too HAuthd , all work good, i can reloging, i can to send you my HAuthd if you need. Quote
menma Posted February 27, 2021 Posted February 27, 2021 (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 February 27, 2021 by menma Quote
zconll Posted February 27, 2021 Posted February 27, 2021 HF Here you have full server with some small fixes (still too work to do) 2 1 Quote
menma Posted February 27, 2021 Posted February 27, 2021 1 hour ago, zconll said: HF Here you have full server with some small fixes (still too work to do) Thank you! Your files work fine. Quote
Mechas Posted February 27, 2021 Posted February 27, 2021 7 hours ago, menma said: what authd are you using?I download but it did not help. 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. Quote
Recommended Posts
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.