Я уже давно перестал копаться в клиентах уо, поскольку не имею такой возможности.
Однако поддержку нового клиента легко добавлю, если мне пришлют необходимую для этого информацию.
Для поддержки нового клиента желательно найти, по возможности, все, что пилот умеет определять на текущий момент.
Чисто числовые значения ищутся очень просто, например с помощью взломщика игр ArtMoney. Просто указывается текущее значение для поиска, потом значение меняется в игре, и отсеиваются все несущественные данные в артмани. И так до тех пор, пока не останется только то, что нужно.
Разного рода переключатели ищутся аналогичным образом, с той лишь разницей, что отключеное состояние переключателя обычно ищется как 0 (ноль), а включеное - 1 (на самом деле включено это значит не равно нулю, но на практике обычно равно единице).
Для того, чтоб добавить поддержку в пилот, нужен адрес, найденый в артмани. Иногда бывает, что при следующем запуске игры этот адрес меняется, тогда еще придется поискать. В памяти клиента всегда есть постоянное место с адресами, которые указывают где будут храниться те или иные параметры.
Если адрес больше чем 00хххххх, то необходимо найти адрес из указанного диапазона, имеющий ссылку на найденый.
Вот примерно что надо. Эти адреса вроде статичные.
Show Names : Это настройки клиента
Transparency :
Criminal action :
Path Finding :
Always Run :
Coords : координаты чара xyz, достаточно найти одну из них, лучше y
Target : форма курсора, 0 - рука, 1 - прицел
Last Spell : номер последнего прокастованого с книги спела
0: 'Clumsy'
1: 'Create Food'
2: 'Feeblemind'
3: 'Heal'
4: 'Magic Arrow'
Last Skill : номер последнего использованого скила
0: 'Alchemy'
1: 'Anatomy'
2: 'Animal Lore'
3: 'Item ID'
4: 'Arms Lore'
Last Lifted ID : ид последнего сдвинутого с места предмета
Last Object Type : тип последнего использованного объекта
Last Static Type : тип последней статической цели (вся статика состоит из простых объектов)
Last Target Kind : тип последней цели 1 - Item, 2 - Ground, 3 - Static
Last Target XYZ : координаты последней цели
Last Object ID : ид последнего использованного предмета
Last Target ID : ид последней цели
CharDir : направление взгляда чара, 0 - чар смотрит на север, каждые 45 градусов поворота чара по часовой стрелке добавляют еденичку, т.е. 7 - чар смотрит на северо-запад
С поиском следующих возникают некоторые проблемы. Статичным является адрес, по которому находится другой адрес, по которому находится....
Char Parameters : хиты, мана и прочее. все находятся в одном блоке памяти.
Ищешь имя чара, отнимаешь от найденного адреса $A4 и ищешь полученный адрес, от следующего найденного отнимаешь $8С и ищешь опять. Последний найденный должен быть статическим, и после перезапуска клиента по нему должно получится выйти на параметры чара.
Возможно я где-то ошибся, или алгоритм сменился, не переживай особо, если не получится с первого раза (IMG:
style_emoticons/default/smile.gif)
Last Message : последнее сообщение, в памяти хранится как список, в каждой записи есть адреса следующего и предидущего элемента. ищешь последнюю запись, от нее вверх до начала, смотришь адрес начала
и ищешь ссылку на него.
Всякие Last ххх проще находить имея под рукой ГМский аккаунт.
Для облегчения поиска последнего сообщения и параметров персонажа, я добавил в пилот маленький пунктик. находится в ?\?, там не сложно. Проверить правильность можно на панели параметров персонажа.