Jump to content
Sign in to follow this  
astarot12

Не зайти в Lineage 2 High Five и Windows 10

Recommended Posts

Здравствуйте, форумчане! Столкнулся с проблемой при заходе в игру на Windows 10. Клиент игры запускается нормально, а после ввода логина, пароля и нажатия Войти - окно просто закрывается. Никаких ошибок при этом не вылазит. В процессах l2.exe не висит. Вот такая вот ерунда. Гугл не помог, так что надеюсь на вашу помощь. Прошу прощения, если подобная тема уже поднималась) Заранее спасибо!

Edited by JoeyTribbiani

Share this post


Link to post
Share on other sites
42 минуты назад, astarot12 сказал:

Здравствуйте, форумчане! Столкнулся с проблемой при заходе в игру на Windows 10. Клиент игры запускается нормально, а после ввода логина, пароля и нажатия Войти - окно просто закрывается. Никаких ошибок при этом не вылазит. В процессах l2.exe не висит. Вот такая вот ерунда. Гугл не помог, так что надеюсь на вашу помощь. Прошу прощения, если подобная тема уже поднималась) Заранее спасибо!

engine.dll

Либо возми с других проектов патч и вытащи там библиотеку под 10

 

и в  system находится зашита

Edited by terege

Share this post


Link to post
Share on other sites

Перепробовал много engine.dll, ничего не помогает. Пробовал разные system, после вставки защиты появляется проблема. Может дело в самой серверной сборке или защите сервера? На сервере стоит FT-Guard. Пробовал перекомпиливать dsetup.dll миллион раз, толку ноль. Исправление проблем с совместимостью, запуск от имени администратора, отключение DEP и остальные танцы с бубном не обвенчались успехом. Я в панике) Помогите кто может) :help:

Share this post


Link to post
Share on other sites

открой Guard.log который в папке system создает ftguard и глянь ошибку, под win10 нужно изменять компиляцию dsetup.dll

Share this post


Link to post
Share on other sites

Хмм, в Guard.log пишет следующее: "Bot Program Detected #0!". Что с этим можно сделать? Свистопляски с изменением кода и перекомпилом?)

Share this post


Link to post
Share on other sites

Немного поковырялся в коде, скомпилил, и - вуаля, все пашет) Спасибо всем за советы!

Share this post


Link to post
Share on other sites

Здравствуйте, тоже самое ошибка. Что делать? 

Share this post


Link to post
Share on other sites
1 час назад, Somon сказал:

Здравствуйте, тоже самое ошибка. Что делать? 

В папке System в файле Guard.log скопируйте содержание ошибки.

Найдите эту ошибку в коде защиты клиента (нужен исходник защиты FT-Guard).

За комментируйте ее (или исправьте по своему).

Профит! 

Share this post


Link to post
Share on other sites
1 час назад, zGosu сказал:

В папке System в файле Guard.log скопируйте содержание ошибки.

Найдите эту ошибку в коде защиты клиента (нужен исходник защиты FT-Guard).

За комментируйте ее (или исправьте по своему).

Профит! 

int __fastcall new_AddNetworkQueue(unsigned int This, unsigned int EDX, TNetworkPacket *NetworkPacket)
{
	if ((*(unsigned int*) (KiUserExceptDispADR + 10) + KiUserExceptDispADR < hNtDllStart) || (*(unsigned int*) (KiUserExceptDispADR + 10) + KiUserExceptDispADR > hNtDllEnd))
		ErrorExit("Bot Program Detected #0!");

	unsigned int retAddr = *((unsigned int*) &NetworkPacket - 1);

	const char*  newInetAdres;
	HOSTENT* pHost = gethostbyname(newHostName);
	if(pHost == NULL)
		newInetAdres = "IP.АДРЕС";
	else
	{
		char szBuff[80];
		if(pHost->h_addr_list[0] != NULL)
		{
			sprintf(szBuff, "%u.%u.%u.%u", (unsigned char) pHost->h_addr_list[0][0],
										   (unsigned char) pHost->h_addr_list[0][1],
										   (unsigned char) pHost->h_addr_list[0][2],
										   (unsigned char) pHost->h_addr_list[0][3]);
			newInetAdres = szBuff;
		}
		else
			newInetAdres = "IP.АДРЕС";
	}

	if ((retAddr < hEngineStart) || (retAddr > hEngineEnd))
		ErrorExit("Bot Program Detected #1!");

	if (NetworkPacket->subid == 0xFFFF)
	{
		switch (NetworkPacket->id)
		{
			case 0x2E:
				decodeKey(NetworkPacket->data + 1);
				break;
			case 0xB0:
				memset(&SpecialStrings[NetworkPacket->data[0]].FontDrawInfo, 0, sizeof(TFontDrawInfo));
				SpecialStrings[NetworkPacket->data[0]].isDraw = (NetworkPacket->data[1] == 1) ? true : false;
				SpecialStrings[NetworkPacket->data[0]].FontDrawInfo.font = (char) NetworkPacket->data[2];
				SpecialStrings[NetworkPacket->data[0]].x = *(int*) (NetworkPacket->data + 3);
				SpecialStrings[NetworkPacket->data[0]].y = *(int*) (NetworkPacket->data + 7);
				SpecialStrings[NetworkPacket->data[0]].FontDrawInfo.color = *(unsigned int*) (NetworkPacket->data + 11);
				wcscpy_s(SpecialStrings[NetworkPacket->data[0]].text, (wchar_t*) (NetworkPacket->data + 15));
				if (NetworkPacket->data[0] == 14)
				{
					HANDLE hIcmpFile = IcmpCreateFile();
					ICMP_ECHO_REPLY Reply;
					if (hIcmpFile != 0)
					{
						if (IcmpSendEcho(hIcmpFile, inet_addr(newInetAdres), 0, 0, 0, &Reply, sizeof(ICMP_ECHO_REPLY), 500) != 0)
							lastPing = Reply.RoundTripTime;
						IcmpCloseHandle(hIcmpFile);
					}
					wsprintf(SpecialStrings[NetworkPacket->data[0]].text, L"%ls%d", (wchar_t*) (NetworkPacket->data + 15), lastPing);
				}
				break;
		}
	}

	return true_AddNetworkQueue(This, EDX, NetworkPacket);
}

А как исправить код? 

Share this post


Link to post
Share on other sites
8 часов назад, Somon сказал:

int __fastcall new_AddNetworkQueue(unsigned int This, unsigned int EDX, TNetworkPacket *NetworkPacket)
{
	if ((*(unsigned int*) (KiUserExceptDispADR + 10) + KiUserExceptDispADR < hNtDllStart) || (*(unsigned int*) (KiUserExceptDispADR + 10) + KiUserExceptDispADR > hNtDllEnd))
		ErrorExit("Bot Program Detected #0!");

	unsigned int retAddr = *((unsigned int*) &NetworkPacket - 1);

	const char*  newInetAdres;
	HOSTENT* pHost = gethostbyname(newHostName);
	if(pHost == NULL)
		newInetAdres = "IP.АДРЕС";
	else
	{
		char szBuff[80];
		if(pHost->h_addr_list[0] != NULL)
		{
			sprintf(szBuff, "%u.%u.%u.%u", (unsigned char) pHost->h_addr_list[0][0],
										   (unsigned char) pHost->h_addr_list[0][1],
										   (unsigned char) pHost->h_addr_list[0][2],
										   (unsigned char) pHost->h_addr_list[0][3]);
			newInetAdres = szBuff;
		}
		else
			newInetAdres = "IP.АДРЕС";
	}

	if ((retAddr < hEngineStart) || (retAddr > hEngineEnd))
		ErrorExit("Bot Program Detected #1!");

	if (NetworkPacket->subid == 0xFFFF)
	{
		switch (NetworkPacket->id)
		{
			case 0x2E:
				decodeKey(NetworkPacket->data + 1);
				break;
			case 0xB0:
				memset(&SpecialStrings[NetworkPacket->data[0]].FontDrawInfo, 0, sizeof(TFontDrawInfo));
				SpecialStrings[NetworkPacket->data[0]].isDraw = (NetworkPacket->data[1] == 1) ? true : false;
				SpecialStrings[NetworkPacket->data[0]].FontDrawInfo.font = (char) NetworkPacket->data[2];
				SpecialStrings[NetworkPacket->data[0]].x = *(int*) (NetworkPacket->data + 3);
				SpecialStrings[NetworkPacket->data[0]].y = *(int*) (NetworkPacket->data + 7);
				SpecialStrings[NetworkPacket->data[0]].FontDrawInfo.color = *(unsigned int*) (NetworkPacket->data + 11);
				wcscpy_s(SpecialStrings[NetworkPacket->data[0]].text, (wchar_t*) (NetworkPacket->data + 15));
				if (NetworkPacket->data[0] == 14)
				{
					HANDLE hIcmpFile = IcmpCreateFile();
					ICMP_ECHO_REPLY Reply;
					if (hIcmpFile != 0)
					{
						if (IcmpSendEcho(hIcmpFile, inet_addr(newInetAdres), 0, 0, 0, &Reply, sizeof(ICMP_ECHO_REPLY), 500) != 0)
							lastPing = Reply.RoundTripTime;
						IcmpCloseHandle(hIcmpFile);
					}
					wsprintf(SpecialStrings[NetworkPacket->data[0]].text, L"%ls%d", (wchar_t*) (NetworkPacket->data + 15), lastPing);
				}
				break;
		}
	}

	return true_AddNetworkQueue(This, EDX, NetworkPacket);
}

А как исправить код? 

заакомментируй тот текст, который у тебя в log файле написан

Share this post


Link to post
Share on other sites

кто-то может внятно разъяснить решение данной проблемы? поподробнее плиз если можно чтоб так как в книге с началом названия ДЛЯ ЧАЙНИКОВ 

Share this post


Link to post
Share on other sites
В 09.01.2019 в 20:30, brunzak сказал:

кто-то может внятно разъяснить решение данной проблемы? поподробнее плиз если можно чтоб так как в книге с началом названия ДЛЯ ЧАЙНИКОВ 

Какая версия mvs?

Share this post


Link to post
Share on other sites
      

	                 
		
int __fastcall new_AddNetworkQueue(unsigned int This, unsigned int EDX, TNetworkPacket *NetworkPacket)
{
	if ((*(unsigned int*) (KiUserExceptDispADR + 10) + KiUserExceptDispADR < hNtDllStart) || (*(unsigned int*) (KiUserExceptDispADR + 10) + KiUserExceptDispADR > hNtDllEnd))
		ErrorExit("Bot Program Detected #0!");

	unsigned int retAddr = *((unsigned int*) &NetworkPacket - 1);

	if ((retAddr < hEngineStart) || (retAddr > hEngineEnd))
		ErrorExit("Bot Program Detected #1!");

	if (NetworkPacket->subid == 0xFFFF)
	{
		switch (NetworkPacket->id)
		{
			case 0x2E:
				decodeKey(NetworkPacket->data + 1);
				break;
			case 0xB0:
				memset(&SpecialStrings[NetworkPacket->data[0]].FontDrawInfo, 0, sizeof(TFontDrawInfo));
				SpecialStrings[NetworkPacket->data[0]].isDraw = (NetworkPacket->data[1] == 1) ? true : false;
				SpecialStrings[NetworkPacket->data[0]].FontDrawInfo.font = (char) NetworkPacket->data[2];
				SpecialStrings[NetworkPacket->data[0]].x = *(int*) (NetworkPacket->data + 3);
				SpecialStrings[NetworkPacket->data[0]].y = *(int*) (NetworkPacket->data + 7);
				SpecialStrings[NetworkPacket->data[0]].FontDrawInfo.color = *(unsigned int*) (NetworkPacket->data + 11);
				wcscpy_s(SpecialStrings[NetworkPacket->data[0]].text, (wchar_t*) (NetworkPacket->data + 15));
				if (NetworkPacket->data[0] == 14)
				{
					HANDLE hIcmpFile = IcmpCreateFile();
					ICMP_ECHO_REPLY Reply;
					if (hIcmpFile != 0)
					{
						if (IcmpSendEcho(hIcmpFile, inet_addr("127.0.0.1"), 0, 0, 0, &Reply, sizeof(ICMP_ECHO_REPLY), 500) != 0)
							lastPing = Reply.RoundTripTime;
						IcmpCloseHandle(hIcmpFile);
					}
					wsprintf(SpecialStrings[NetworkPacket->data[0]].text, L"%ls%d", (wchar_t*) (NetworkPacket->data + 15), lastPing);
				}
				break;
		}
	}

	return true_AddNetworkQueue(This, EDX, NetworkPacket);
}
	      

	   
		

	  
	
		 
		
			  
				
			   
				       
				  
				   
				   
				       
				   
				 
					  
					
						          
						
					   
				
				
		
	

	 

That is correct code! but the same work only in win 7 and 8.1:(

Edited by Alban33

Share this post


Link to post
Share on other sites

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.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...