| 
		
	
	
	
		
	Сообщений: 122 
	Тем: 6 
	Зарегистрирован: Sep 2013
	
 Репутация: 
112 
	
		
		
		01-21-2014, 08:07 PM 
(Сообщение последний раз редактировалось: 01-21-2014, 08:59 PM   VenomRaider.)
		
	 
		darkevil Написал:http://rghost.ru/51824507 
спасибо!!!
Добавлено через 51 минуту 
пакет ExAcquireAPSkillList:
 
			ExAcquireAPSkillList PHP код: <?php public class ExAcquireAPSkillList extends L2GameServerPacket {
 
 @Override
 protected void writeImpl() {
 writeEx(0x168);
 writeD(1);       //разрешено-ли использовать
 writeQ(10000000);        //adena count
 writeQ(250000000);      //SP     //обмен на 1 очко
 writeD(16);             //Skill count    //полученые очки максимум 16 и потом обмен
 writeD(0);      //полученые очки
 writeD(0);
 writeD(0);
 }
 }
 
 
	
	
	
		
	Сообщений: 199 
	Тем: 0 
	Зарегистрирован: Jul 2013
	
 Репутация: 
348 
	
	
		кто знает, что нужно отсылать клиенту чтобы Линдвиор стал виден?
	 
	
	
	
		
	Сообщений: 102 
	Тем: 6 
	Зарегистрирован: Jun 2012
	
 Репутация: 
116 
	
	
		Melcor Написал:кто знает, что нужно отсылать клиенту чтобы Линдвиор стал виден? 
Да линдвиор и так виден, причем в 11 разных вариациях. + Сцены + нпц со "встроенными" сценами.
	 
	
	
	
		
	Сообщений: 199 
	Тем: 0 
	Зарегистрирован: Jul 2013
	
 Репутация: 
348 
	
		
		
		01-21-2014, 11:14 PM 
(Сообщение последний раз редактировалось: 01-22-2014, 02:03 AM   Melcor.)
		
	 
		BoneBreaker Написал:Да линдвиор и так виден, причем в 11 разных вариациях. + Сцены + нпц со "встроенными" сценами.Странно, когда я спавню линдвиора (наземный вариант) - появляется только голубой шар и все :\ 
 Хотя вроде понял, нужно ставить подходящую анимацию(SocialAction).
 
в общем оказалось все гораздо проще, оказывается нужно было "одеть" на дракона оружие..
	 
	
	
	
		
	Сообщений: 122 
	Тем: 6 
	Зарегистрирован: Sep 2013
	
 Репутация: 
112 
	
	
		ребят, за что отвечает пакет ExChangeMPCost ??? 
в снифе посылается так
         PHP код: <?php activeChar.sendPacket(new ExChangeMPCost(0, -20));
 activeChar.sendPacket(new ExChangeMPCost(1, -10));
 activeChar.sendPacket(new ExChangeMPCost(3, -20));
 activeChar.sendPacket(new ExChangeMPCost(0, -24));
 activeChar.sendPacket(new ExChangeMPCost(1, -23.5));
 activeChar.sendPacket(new ExChangeMPCost(3, -24));
 activeChar.sendPacket(new ExChangeMPCost(1, -27.325000000000003));
 activeChar.sendPacket(new ExChangeMPCost(0, -31.599999999999994));
 activeChar.sendPacket(new ExChangeMPCost(3, -31.599999999999994));
 activeChar.sendPacket(new ExChangeMPCost(1, -34.59249999999999));
 
 
	
	
	
		
	Сообщений: 1,912 
	Тем: 56 
	Зарегистрирован: Jan 2009
	
 Репутация: 
12,921 
	
	
		VenomRaider Написал:ребят, за что отвечает пакет ExChangeMPCost ???
 в снифе посылается так
 
 
 PHP код: <?php activeChar.sendPacket(new ExChangeMPCost(0, -20));
 activeChar.sendPacket(new ExChangeMPCost(1, -10));
 activeChar.sendPacket(new ExChangeMPCost(3, -20));
 activeChar.sendPacket(new ExChangeMPCost(0, -24));
 activeChar.sendPacket(new ExChangeMPCost(1, -23.5));
 activeChar.sendPacket(new ExChangeMPCost(3, -24));
 activeChar.sendPacket(new ExChangeMPCost(1, -27.325000000000003));
 activeChar.sendPacket(new ExChangeMPCost(0, -31.599999999999994));
 activeChar.sendPacket(new ExChangeMPCost(3, -31.599999999999994));
 activeChar.sendPacket(new ExChangeMPCost(1, -34.59249999999999));
 
 
Смена количества МП в Интерфейсе, с учетом наличия бафов.
 
Первое - это тип скилов с скрипта.
 
0 - физ 
1- маг 
3 - денсы сонги
 
как то так, если точно помню)
 
Второе число это мофикатор
	 
	
	
	
		
	Сообщений: 122 
	Тем: 6 
	Зарегистрирован: Sep 2013
	
 Репутация: 
112 
	
	
		Ребят, есть ли у кого продвижения с пакетом ExNpcInfo ??? я перепробовал уже всё что мог.
	 
	
	
	
		
	Сообщений: 320 
	Тем: 24 
	Зарегистрирован: Sep 2010
	
 Репутация: 
817 
	
	
	
		
	Сообщений: 122 
	Тем: 6 
	Зарегистрирован: Sep 2013
	
 Репутация: 
112 
	
		
		
		01-23-2014, 05:30 PM 
(Сообщение последний раз редактировалось: 01-23-2014, 06:04 PM   VenomRaider.)
		
	 
		WoWan-SM Написал:VenomRaider, https://forum.zone-game.info/showthread....post347377
 https://forum.zone-game.info/showthread....post341840
 https://forum.zone-game.info/showthread....post339608
 
это всё не рабочий вариант, нпц появляются и тд. но: 
1. они не ходят, 2. у них нет анимации
Добавлено через 33 минуты 
ползав по декомпилу Engine.dll, нашёл очень интересные методы, что для чего они но там есть определённая структура, может дядьки из гв подскажут что с этим делать????
 
			декомпил PHP код: <?php int __userpurge sub_2042DFB0<eax>(unsigned int a1<eax>, int a2<ecx>, signed int a3)
 {
 int v3; // ebp@1
 int v4; // esi@1
 char v5; // zf@3
 unsigned int v6; // edi@3
 int v7; // ebx@5
 int v8; // eax@9
 char v9; // zf@10
 int v10; // ecx@12
 unsigned int v11; // eax@14
 char v12; // zf@15
 int result; // eax@17
 int v14; // [sp+8h] [bp-8h]@10
 int v15; // [sp+Ch] [bp-4h]@15
 
 v3 = 0;
 v4 = a3;
 if ( a1 && a2 > 0 )
 {
 v5 = *(_DWORD *)(a3 + 348) == 1;
 v6 = a1 + a2;
 a3 = 0;
 if ( v5 )
 a3 = 37;
 v7 = sub_2042D790(a1 + a2, v4, a1, (int)L"h", (unsigned int)&a3);
 if ( a3 <= 0 )
 goto LABEL_25;
 if ( a3 != 37 )
 goto LABEL_25;
 if ( *(_DWORD *)(v4 + 348) == 1 )
 {
 sub_201FB550(v4 + 8);
 sub_201FB510(v4 + 8, 0x1Eu);
 sub_201FB510(v4 + 8, 3u);
 v3 = 0;
 }
 v8 = sub_2042D790(v6, v4, v7, (int)L"b", 5);
 if ( v8 == v3 )
 goto LABEL_25;
 v9 = *(_DWORD *)(v4 + 348) == 1;
 v14 = v3;
 if ( v9 )
 v14 = 54;
 v10 = sub_2042D790(v6, v4, v8, (int)L"c", (unsigned int)&v14);
 if ( v10 == v3 )
 goto LABEL_25;
 if ( v14 <= v3 )
 goto LABEL_25;
 v11 = sub_2042DF10(v14, v10, v4);
 if ( v11 == v3 )
 goto LABEL_25;
 v12 = *(_DWORD *)(v4 + 348) == 1;
 v15 = v3;
 if ( v12 )
 v15 = 32713;
 result = sub_2042D790(v6, v4, v11, (int)L"h", (unsigned int)&v15);
 if ( result == v3
 || (_WORD)v15 > (_WORD)v3 && (result = sub_2042D800(result, v4, result, (unsigned __int16)v15), result == v3) )
 LABEL_25:
 result = 0;
 }
 else
 {
 result = 0;
 }
 return result;
 }
 //----- (2042D790) --------------------------------------------------------
 int __fastcall sub_2042D790(unsigned int a1, int a2, unsigned int a3, int a4, char a5)
 {
 char v5; // zf@2
 char *v7; // [sp+0h] [bp-4h]@1
 
 v7 = (char *)a1;
 if ( a1 )
 {
 v5 = *(_DWORD *)(a2 + 348) == 1;
 v7 = &a5;
 if ( v5 )
 return sub_2049C920(a3, a1 - a3, a4, (int)&a5, 1) + a3;
 if ( *(_DWORD *)(a2 + 352) )
 return sub_204A4160(&v7, a1, a3, a4);
 debugf(L"CClientsocket is not available");
 }
 return a3;
 }
 //----- (2042D800) --------------------------------------------------------
 unsigned int __userpurge sub_2042D800<eax>(int a1<eax>, int a2, int a3, int a4)
 {
 int v4; // ebx@1
 unsigned int result; // eax@2
 unsigned int v6; // esi@4
 int v7; // [sp+0h] [bp-18h]@63
 int v8; // [sp+4h] [bp-14h]@63
 int v9; // [sp+8h] [bp-10h]@63
 int v10; // [sp+Ch] [bp-Ch]@1
 int (*v11)(); // [sp+10h] [bp-8h]@1
 int v12; // [sp+14h] [bp-4h]@1
 unsigned int v13; // [sp+20h] [bp+8h]@4
 
 v12 = -1;
 v11 = sub_2051C094;
 v10 = a1;
 v4 = a3;
 if ( !a3 || a4 <= 0 )
 return 0;
 v6 = a3 + a4;
 v13 = a3 + a4;
 if ( sub_201FB4A0(a2 + 8, 0) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 + 24);
 if ( sub_201FB4A0(a2 + 8, 4u) )
 v4 = sub_2042D790(v6, a2, v4, (int)"ddd", a2 + 36);
 if ( sub_201FB4A0(a2 + 8, 5u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 + 48);
 if ( sub_201FB4A0(a2 + 8, 6u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 + 52);
 if ( sub_201FB4A0(a2 + 8, 7u) )
 v4 = sub_2042D790(v6, a2, v4, (int)"dd", a2 + 56);
 if ( sub_201FB4A0(a2 + 8, 8u) )
 v4 = sub_2042D790(v6, a2, v4, (int)"FF", a2 + 96);
 if ( sub_201FB4A0(a2 + 8, 9u) )
 v4 = sub_2042D790(v6, a2, v4, (int)"ddd", a2 + 120);
 if ( sub_201FB4A0(a2 + 8, 0xAu) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"c", a2 - 124);
 if ( sub_201FB4A0(a2 + 8, 0xBu) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"c", a2 - 123);
 if ( sub_201FB4A0(a2 + 8, 0xEu) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"c", a2 - 120);
 if ( sub_201FB4A0(a2 + 8, 0xFu) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"c", a2 - 119);
 if ( sub_201FB4A0(a2 + 8, 0x10u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 116);
 if ( sub_201FB4A0(a2 + 8, 0x11u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 112);
 if ( sub_201FB4A0(a2 + 8, 0x12u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 108);
 if ( sub_201FB4A0(a2 + 8, 0x13u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 104);
 if ( sub_201FB4A0(a2 + 8, 0x16u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 96);
 if ( sub_201FB4A0(a2 + 8, 0x17u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 92);
 if ( sub_201FB4A0(a2 + 8, 0x18u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 88);
 if ( sub_201FB4A0(a2 + 8, 0x19u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 84);
 if ( sub_201FB4A0(a2 + 8, 0x1Au) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 80);
 if ( sub_201FB4A0(a2 + 8, 0x1Bu) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 - 76);
 if ( sub_201FB4A0(a2 + 8, 0x1Cu) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"c", a2 - 72);
 if ( sub_201FB4A0(a2 + 8, 0x1Du) )
 v4 = sub_2042D790(v6, a2, v4, (int)"dd", a2 - 68);
 if ( sub_201FB4A0(a2 + 8, 3u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"S", 50);
 if ( sub_201FB4A0(a2 + 8, 0x1Fu) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 + 52);
 if ( sub_201FB4A0(a2 + 8, 0x20u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 + 56);
 if ( sub_201FB4A0(a2 + 8, 0x21u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"c", a2 + 60);
 if ( sub_201FB4A0(a2 + 8, 0x22u) )
 v4 = sub_2042D790(v6, a2, v4, (int)L"d", a2 + 64);
 if ( sub_201FB4A0(a2 + 8, 0x23u) )
 v4 = sub_2042D790(v6, a2, v4, (int)"ddddd", a2 + 68);
 if ( sub_201FB630(a2 + 8) )
 {
 LOBYTE(a4) = 0;
 v7 = 0;
 v8 = 0;
 v9 = 0;
 v12 = 0;
 if ( !sub_201FB5C0(&a4, (int)&v7, 8, 1u) )
 {
 v12 = -1;
 result = 0;
 v7 = 0;
 v8 = 0;
 v9 = 0;
 return result;
 }
 if ( *(_DWORD *)(a2 + 348) == 1 )
 {
 if ( *(_BYTE *)(a2 + 134) )
 sub_201FB580((int)&v7, 7u);
 if ( *(_BYTE *)(a2 + 135) )
 sub_201FB580((int)&v7, 6u);
 if ( *(_BYTE *)(a2 + 156) )
 sub_201FB580((int)&v7, 5u);
 if ( *(_BYTE *)(a2 + 157) )
 sub_201FB580((int)&v7, 4u);
 }
 v4 = sub_2042D790(v13, a2, v4, (int)L"c", (unsigned int)&a4);
 if ( sub_201FB4A0(a2 + 8, 0xCu) )
 *(_BYTE *)(a2 + 134) = sub_201FB4A0((int)&v7, 7u);
 if ( sub_201FB4A0(a2 + 8, 0xDu) )
 *(_BYTE *)(a2 + 135) = sub_201FB4A0((int)&v7, 6u);
 if ( sub_201FB4A0(a2 + 8, 0x14u) )
 *(_BYTE *)(a2 + 156) = sub_201FB4A0((int)&v7, 5u);
 if ( sub_201FB4A0(a2 + 8, 0x15u) )
 *(_BYTE *)(a2 + 157) = sub_201FB4A0((int)&v7, 4u);
 v12 = -1;
 v6 = v13;
 v7 = 0;
 v8 = 0;
 v9 = 0;
 }
 result = v4;
 if ( *(_DWORD *)(a2 + 348) != 1 )
 result = v6;
 return result;
 }
 
 
	
	
	
		
	Сообщений: 406 
	Тем: 10 
	Зарегистрирован: Jun 2008
	
 Репутация: 
2,862 
	
	
		Из за ряда причин ( в том числе из за крыс ) я по динамичным пакетам не буду помогать да и вряд ли кто то из нас.
	 
Человек просто обязан ошибаться, раз другие учатся на его ошибках .......
 |