PDA

Просмотр полной версии : Как программно двигать чара в l2


Hippeys
30.10.2017, 04:23
Здравствуйте, скажите, как можно программно двигать чара в l2? Насколько я понял в engine.dll ( или может быть в другой либе) есть функция которая за это отвечает. До сего момента двигал тупо эмулируя нажатия клавиатуры, но сейчас такое не катит. Отправлять левый пакет используя SendPacket тоже не катит. Как это делает, например, адреналин бот?

Спасибо

Smwr
30.10.2017, 13:43
Отправлять левый пакет используя SendPacket тоже не катит
чой это?
Как это делает, например, адреналин бот?
1.71 использует UNetworkHandler::MTL

Hippeys
30.10.2017, 15:52
чой это?L

фрост палит).

Добавлено через 1 час 0 минут
Хм, странно, эта MTL выглядит ведь вот так?
UNetworkHandler::MTL(class AActor *,class FVector,class FVector,class AActor *,int,int,int)
Объявил я её вот так:
typedef void (__cdecl * _MTL)(void * self, void * AActor, int v1 , int v2, void * AActor2 , int i1, int i2, int i3);

Похукал, чтобы достать self, но вот чего-то падает, может эта функция не так выглядит?

Smwr
30.10.2017, 19:36
typedef void (__cdecl * _MTL)(void * self, void * AActor, int v1 , int v2, void * AActor2 , int i1, int i2, int i3);
Похукал, чтобы достать self, но вот чего-то падает, может эта функция не так выглядит?
thiscall соглашение

а вообще это чуть ли не самая обсужденная тема на этом форуме.

Hippeys
30.10.2017, 22:39
thiscall соглашение

а вообще это чуть ли не самая обсужденная тема на этом форуме.

так я же добавил первым аргументом void* self, в таком случае можно менять на _cdecl.

На форуме только такой вид нашёл, на самом деле обсуждения этой функции немного, насколько я понял. Кроме сендпакета конечно

ScythLab
31.10.2017, 19:49
в таком случае можно менять на _cdecl.
с чего ты это взял?
Вики рулит (https://ru.wikipedia.org/wiki/Соглашение_о_вызове#thiscall)