Rus. server

02/13/2010 12:36 FunkU#1441
Пытаюсь найти смещение для поля ввода чата, но что-то никак не могу прийти к базовому адресу. Получается что-то такого вида: ... + $4 + $4 + $4 + $8 + $1244 + $0. При чём + $4 может быть очень много. Видимо я куда-то не туда полез. Может кто-нибудь с этим разбирался и подскажет?
02/13/2010 17:30 Artem9008#1442
Подскажите мне бота=)))))) на 106 версию клиента!
02/13/2010 19:15 Biga73#1443
держи артем [Only registered and activated users can see links. Click Here To Register...] - отвязанный бот пиратес для 106 версии руоффа
02/14/2010 01:39 gen-ostr#1444
Друзья! нуждаюсь в Вашей помощи. никак не могу найти офсеты, чтобы проверить не используются ли в данный момент банки. ( в смысле нет ли перезарядки) чтоб клиент не кричал лишний раз что умение перезаряжается. со скилами разобрался как проверить, а вот с банками уже 4 день сижу-безтолку
02/14/2010 07:06 muzhig#1445
Я тоже не нашел что то. ТАк что если найдешь, выложи плиз.
02/14/2010 11:49 gen-ostr#1446
все что смог нарыть по банкам: если разместить банки на панели клавишь, и поискать где еще есть такой же указатель, можно найти среди нескольких указателей структуру, по которой можно определить заюзана ли банка. эта структура всегда последняя из списка, найти ее смещения не могу. чувствую, что не там ищу, ведь юзание банок глобально (тоесть не важно какая именно банка -недоступны стают все), но не могу найти связь с инвентарем. короче- полный ступор :(
02/14/2010 13:24 BuBucekTop#1447
Dwar, AlexGD и Мужиг !!
Очень нужна ваша помощь.
Нашёл в клиенте функцию запуска автопилота - полноценная, с диалогом и трассой на карте : 0044E8E0. Ступор в том, что она принимает один параметр - "формат".
И я ну хоть убей, не пойму как этот самый формат строится.
Если не в лом - давайте раскопаем мозговым штурмом, ведь автопилот - вещь вкусненькая =)
02/14/2010 14:08 dwar#1448
Автопилот «вкусен» в Jade Dynasty, где чар действительно движется самостоятельно, обходя все препятствия. В PW же, это и автопилотом то трудно назвать :)
Самим алгоритмом движения мы располагаем.
Кстати, автопилот строится на вызове все тех же трех функций для движения, которыми мы пользуемся в инъекции, только добавлена функция отображения окошка и десяток процедур вычисления направления. На этом автопилот и заканчивается :)

Added:
Вот окно автопути:
[BA] + $1C + $04 + $08 + $118
Самый простой вариант его открытия :) :
[BA] + $1C + $04 + $08 + $118 + $6C = 1
Можно сам клиент немного подправить, тогда это окно будет вылезать при любом движении.
02/14/2010 14:17 BuBucekTop#1449
Меня в автопилоте интересует как раз трасса на карте и окошко регулирования высоты. Поэтому и ковыряю. Может у тебя етсь что интересненькое по этому вопросу ?

Upd
Такс, я со всем разобрался сам. Спасибо за моральную поддержку =)
Формат команды - в виде массива DWRD'ов в памяти:
Code:
330 - Это код команды (отрабатывается в вызывающей процедуре)
0 - хз что, всегда 0
0 - хз что, всегда 0
0 - код действия (0-старт, 1-изменить высоту, 2-стоп)
X - для кода 0 = X, для кода 1 = высота, для кода 2 = 0
Y - для кода 0 = Y, для кода 1 = 0, для кода 2 = 0
0 - хз что, всегда 0
И вот как это использовать:
Code:
Const
  AutoRouteAddr = $0044E8E0;

procedure AutoRouteCall(cmd : Pointer); stdcall;
var
  addr: Pointer;
begin
  addr := Pointer(AutoRouteAddr);
  asm
    pushad
    mov eax, dword ptr [PW_BASE_ADDRESS]
    mov eax, dword ptr [eax + PW_DYNAMIC_BASE_OFFSET]
    mov ecx, dword ptr [eax + PW_ROLE_BASE_OFFSET]
    push cmd
    call addr
    popad
  end;
end;


procedure TfmMain.Button1Click(Sender: TObject);
var
  buf : array[0..6] of integer;
begin
  buf[0] := 330;
  buf[1] := 0;
  buf[2] := 0;
  buf[3] := 0;
  buf[4] := 1227;
  buf[5] := 984;
  buf[6] := 0;
  self.pwProcess.InjectFunc(@AutoRouteCall, @buf, SizeOf(buf));
end;
Что такое PW_BASE_ADDRESS, PW_DYNAMIC_BASE_OFFSET, PW_ROLE_BASE_OFFSET и как работает InjectFunc расписывать не буду - это очевидно и не раз обсуждалось в ветке.
Sapienti sat.
02/14/2010 19:26 BuBucekTop#1450
Теперь разыскиваются "координаты" точки на карте, к которой автопилот пркладывает маршрут....
02/15/2010 01:47 AlexGD#1451
Есть дикое подозрение, что координаты точки - те же самые, что и для нашего инжекта. А автопилот следит исключительно только за высотой...
02/15/2010 06:19 Barmank#1452
2BuBucekTop
Можно поподробней как ты нашел масив?
Точнее как его распознать в Асме?
А то у меня есть одна переменная и теперь я подозреваю, что это массив.
02/15/2010 11:06 ta2we4ka#1453
Quote:
Originally Posted by Sirioga View Post
Если ты прочит всю тему то точно знал бы что нам это ничем не поможет, так как мы "это" открываем каждый день) не только для d_getservertime. Можешь пойти выложить на zhyk.ru и на лолчитс...там таким скринам будут рады, даже спасибок тебе накидают...ты главное тему назови "ДЮП"...а там уж разбиратся не будут.

Смотрю много умный человек написал) ... сам когда что нить сделаешь тогда и пиши подобные высказывания. Тем более писать в тексте "НАМ" :D:D
02/15/2010 11:13 FunkU#1454
Нашёл оффсет текущего активного поля ввода, если кому надо: [BA] + $1c + $4 + $8 + $18 + $90 + $1244 + $0. С неактивными полями пока не разбирался. Думаю надо заменить $1244 на что-то другое, а вместо $18 подставить смещение нужного элемента интерфейса.

Помогите разобраться с инжектом на продажу вещей. Вот адрес функции: 005DC430. И сама функция:

02/15/2010 13:00 Barmank#1455
Quote:
Originally Posted by FunkU View Post
Помогите разобраться с инжектом на продажу вещей. Вот адрес функции: 005DC430. И сама функция:
Копаю в данный момент:)

Докопался пока до того, что в функцию передаются 2 параметра,
1й массив из 3*занятых ячеек
2й это кол-во занятых ячеек

масив состоит из ID, Hex значения и количества предметов в ячейки.

Кстати на покупку инжект аналогичен вот он 005DC3B0

Но пака грамотно составить не получается.

Вот найденные оффсесты для массива (работают только для 1й ячейки и если переместить предмет на продажу, для последующийх ячеек слишком сложная конструкция)

1й [BA]+1C+20+C34+C+0+8
2й [BA]+1C+20+C34+24
3й [BA]+1C+20+C34+24+4

Кстати на покупку инжект аналогичен 005DC3B0 вот он!