Новый оффсет в ПВ: таргет цели

Всем привет.

На ПВИ в обновлении v855 от 2 июня 2015 нам добавили интересную фишку: теперь мы можем видеть кого выделенный нами перс взял в таргет.

target selected

Говорить о полезности данной функции думаю не стОит. Да это и не входит в цель данной статьи.

Нам же интересно как найти данный оффсет.

Для этого есть несколько способов. Рассмотрим самый быстрый.

Начнем с того, что нам необходимо два персонажа. Либо вы заходите в два окна, либо просите кого-нибудь помочь.

Далее вам надо узнать ID этих двух персонажей. Через них мы будем искать смещение. Можете найти targetID (0X59C для текущей версии) и выделить себя, а затем второго перса, узнав тем самым необходимые нам ID этих персов. Если вам известен текущий для данной версии оффсет ID персов — это, конечно, будет отлично, но если вы не в два окна, а кто-то пришел вам помогать, то получится геморрой.

Итак, у нас есть два перса, есть их ID. ID первого = 2448783, ID второго = 3980927. У вас они будут свои!

Теперь перемещаемся персами в глухое место, где в округе не будет никого. Если такое место в мире найти затруднительно — зайдите в данж, например. Делать это необязательно. Можно всё проделать и в густонаселенной местности, но если наших персов кто-то выделит, то это слегка подпортит поиск.

Выделяем первым персом второго. Будем искать через второго перса. Кого он выделил.

Мы его выделяем, чтобы сервер передал нам информацию о персонаже в таргете. В том числе и кого он выделил.
Не выделив персонажа/моба — не узнаем кто у него в таргете!

Теперь выделяем вторым персонажем первого. Мы знаем, что у первого персонажа ID = 2448783. То есть можно с уверенностью сказать, что в таргете второго персонажа находится ID 2448783. Ищем его в Cheat Engine.

Смотрим, что у нас нашлось
First Scan

Пусть два зеленых (постоянных) адреса вас не смущают — это не то, что нам нужно. Отсеиваем адреса. Для этого меняем таргет второго игрока на известный нам ID. Второй известный нам ID — 3980927 — ID второго игрока. То есть выделяем им самого себя! У первого персонажа по-прежнему выделен второй персонаж.

В поле Value вводим ID второго игрока (3980927) и жмем Next Scan. Получаем:
Next Scan

У меня осталось два адреса. Я вижу, что их значением является ID второго игрока (3980927).

Теперь просто выделю вторым игроком первого (сменю таргет).
Third Step

Смотрим на столбец Value (актуальное значение). Значение второго адреса изменилось, а первого — нет. Так как таргет я сменил, а значение не поменялось — выкидываем его. Таким образом остается единственный адрес, который реагирует на изменение таргета второго игрока. То, что нужно! Кликаем по нему два раза, чтобы переместить адрес в рабочую область снизу.

Находясь в рабочем поле, нажимаем правой кнопкой по добавленном ранее адресу, выбираем Find out what accesses this address.
Find Out

Появился запрос дебаггера — соглашаемся.

Видим пустое окно, готовое отловить инструкции, обращающиеся к нашему адресу. Отлично. Переходим в игру и меняем таргет второму игроку. Смотрим на окно Cheat Engine.

Видим команду
final Step

… в которой до боли знакомое смещение 0x59C. Да, да, не что иное, как смещение для targetID.

Отсюда мы можем сделать вывод, что китайцы просто разлочили нам это смещение в структуре ближайших игроков.

К targetID первого персонажа в одноименной структуре, таким образом, можно обратиться примерно так (PWI): D3A8EC + 1c + 14 + 1c + 98 + 0 + 59c

Вы можете прокомментировать, либо оставить trackback со своего сайта.

Leave a Reply

Powered by WordPress