Сообщений: 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
Из за ряда причин ( в том числе из за крыс ) я по динамичным пакетам не буду помогать да и вряд ли кто то из нас.
Человек просто обязан ошибаться, раз другие учатся на его ошибках .......
|