 |
РУОФФ Адреса и оффсеты - Разработка ПО для Perfect World - Бюро разработчиков Zhyk.Ru: создание ботов, снифферов и прочих программ для Perfect World |
24.01.2012, 07:53
|
#151
|
|
|
|
Старший сержант
|
 Регистрация: 21.09.2009
 Сообщений: 189
 Популярность: 578
 Сказал(а) спасибо: 27
Поблагодарили 145 раз(а) в 36 сообщениях
|
Re: РУОФФ Адреса и оффсеты
|
|
|
24.01.2012, 07:54
|
#152
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 07.10.2009
 Сообщений: 496
 Популярность: 2687
 Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
|
Re: РУОФФ Адреса и оффсеты
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Так что заношу ваши офсеты, не проверяя.
|
|
 |
|
 |
|
Неправда... Проверил то что я выкладывал - на первой странице не обновлено.
Отнесись серьезней, пожалуйста. Тогда и люди будут к поиску смещений серьезней относиться и выкладывать легко, не жалея. А сейчас только и делаешь, что ищешь уже давно найденное, как оказывается в итоге. Или проверяешь, то что уже давно проверили.
Если прям ну ваще нет времени - давай попросим модераторов поменять автора. У меня сейчас есть время и желание. Потом будешь по-свободнее, скажешь, поставим обратно.
Добавлено через 6 минут
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Да там все просто - какие смещения на своем персе, такие и на чужих.
|
|
 |
|
 |
|
Не могу найти адрес для PhizTarget для чужих игроков. Подскажите, пожалуйста!
Для MagicTarget нашел + &H6F8
Последний раз редактировалось krukovis; 24.01.2012 в 08:01.
Причина: Добавлено сообщение
|
|
|
24.01.2012, 10:41
|
#153
|
|
|
|
Пехотинец
|
 Регистрация: 17.05.2010
 Сообщений: 53
 Популярность: 204
 Сказал(а) спасибо: 11
Поблагодарили 15 раз(а) в 6 сообщениях
|
Re: РУОФФ Адреса и оффсеты
________________
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
|
|
|
24.01.2012, 11:00
|
#154
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 07.10.2009
 Сообщений: 496
 Популярность: 2687
 Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
|
Re: РУОФФ Адреса и оффсеты
Я проверил всячески. PhizTarget в структуре чужого персонажа отсутствует. Я зашел в 2 окна и на своем втором персе тестировал. Есть только MagTarget, но учитывая что в 99% случаев скилы используют, то MagTarget в общем то достаточно.
|
|
|
24.01.2012, 16:04
|
#155
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 07.10.2009
 Сообщений: 496
 Популярность: 2687
 Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
|
Re: РУОФФ Адреса и оффсеты
Для твоего удобства подведу итог по тому что обнаружил и не увидел на первой странице.
В структуре чужих персонажей
MagicTarget + &H6F8
FizTarget - отсутствует
WID +0x47C
Cultivation - затереть думаю надо, ибо х.з. чО (было +0х47С).
К остальным не проверенным параметрам надо добавить звездочки, убрать звездочки только после проверки.
В структуре Мобов/НПС/Петов
+2DC MobPTargetID, dword (ID для Физ.атаки)
+2E0 MobMTargetID, dword (ID для Маг.атаки)
В структуре своего персонажа
+0B60 Duration of life/recall of a pet /Ожидание призыва пета/ - неправильный адрес. И правильный не смог найти. М.б. затереть или пометить что он не найден? Может кто увидит и скажет?
Можно, думаю, добавить пояснение к этому значению:
/+0480 Chi, dword/ - По этому смещению лежит количество полных чи. Т.е. если это значение = I, то максимальное кол-во ярости будет I+99, где i = 0 to 3.
Ну вроде все
Последний раз редактировалось krukovis; 24.01.2012 в 16:08.
|
|
|
24.01.2012, 16:29
|
#156
|
|
|
|
Разведчик
|
 Регистрация: 09.06.2010
 Сообщений: 4
 Популярность: 119
 Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
|
Re: РУОФФ Адреса и оффсеты
krukovis, ты не совсем прав.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Cultivation - затереть думаю надо, ибо х.з. чО
|
|
 |
|
 |
|
Это не хз чо, а вполне понятная вещь - числовая форма "статуса" персонажа - значение меняется каждые 10 лвл с прохождением "уважения". Причем, что интересно, если окружающих персов не брать в таргет - то их данные практически пустые, за исключением очень немногих значений, одно из которых как раз Cultivation.
К примеру таким образом можно определить примерный лвл персонажа не выделяя его в таргет (1-8, 9-18, 19-28 и т.п.). Кроме того это единственный, насколько я понимаю, способ определить адский или райский перс.
|
|
|
24.01.2012, 16:34
|
#157
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 07.10.2009
 Сообщений: 496
 Популярность: 2687
 Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
|
Re: РУОФФ Адреса и оффсеты
|
|
|
24.01.2012, 16:39
|
#158
|
|
|
|
Разведчик
|
 Регистрация: 09.06.2010
 Сообщений: 4
 Популярность: 119
 Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
|
Re: РУОФФ Адреса и оффсеты
Я на работе сейчас, как дома буду - гляну в исходники. Но вообще брал смещения из этой темы. По сути это смещение такое же как и у "своего" перса - то бишь должно быть 0х48С
|
|
|
24.01.2012, 16:42
|
#159
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 07.10.2009
 Сообщений: 496
 Популярность: 2687
 Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
|
Re: РУОФФ Адреса и оффсеты
|
|
|
24.01.2012, 17:31
|
#160
|
|
|
|
Разведчик
|
 Регистрация: 23.12.2011
 Сообщений: 42
 Популярность: 192
 Сказал(а) спасибо: 26
Поблагодарили 11 раз(а) в 9 сообщениях
|
Re: РУОФФ Адреса и оффсеты
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Структура лута, ресов
BA +0x1C +0x1C +0x28 +0x18 +(i*0x4) +0x4 /i = 0 - 0x300/
|
|
 |
|
 |
|
хотел спросить нашет етого дак вот читаю я так
 |
Цитата: |
 |
|
|
|
|
|
|
|
var nearItemCount = MemoryManager.ChainReadInt32(BaseAddress, 0x1c, 0x1c, 0x28, 0x14);
for (var i = 0; i < nearItemCount; i++)
{
var itemBase = MemoryManager.ChainReadInt32(BaseAddress, 0x1c, 0x1c, 0x28, 0x18, i * 0x4, 0x4);
if (itemBase != 0)
{
// Получаем данные из структуры, которые нам нужны
var Name = MemoryManager.ChainReadString(itemBase + 0x164, 64, 0x0);
resultBuilder.AppendLine(String.Format("Name Item: {0}", Name));
resultBuilder.AppendLine();
}
} |
|
 |
|
 |
|
и как не странно не все имена предметов выводит, выводит где то 2 из 30 в чем ошибка???
|
|
|
24.01.2012, 17:42
|
#161
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 07.10.2009
 Сообщений: 496
 Популярность: 2687
 Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
|
Re: РУОФФ Адреса и оффсеты
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
как не странно не все имена предметов выводит, выводит где то 2 из 30 в чем ошибка???
|
|
 |
|
 |
|
Ошибки нет. Просто имена предметов читаются в зависимости от типа предмета.
Читай тут http://zhyk.ru/forum/showpost.php?p=...6&postcount=99
И тут есть более полная функа на определение Имени предмета http://www.zhyk.ru/forum/showthread.php?t=348356, правда на Delphi, но смещения есть.
|
|
|
Пользователь сказал cпасибо:
|
|
24.01.2012, 19:16
|
#162
|
|
|
|
Пехотинец
|
 Регистрация: 16.09.2010
 Сообщений: 94
 Популярность: 73
 Сказал(а) спасибо: 5
Поблагодарили 21 раз(а) в 5 сообщениях
|
Re: РУОФФ Адреса и оффсеты
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Потому что это не отсортированный список там i = 0 - 0x300
А в сортированном
BA +0x1C +0x34 +0x38C +0x88 +(i*0x4)
i = от 0 до Count - кол-ва игроков. Там все персонажи идут по порядку. Но говорят, что в этот список не все попадают. А может быть просто эти персы определяются сервером с ошибкой и он о них инфу с ошибкой шлет.
|
|
 |
|
 |
|
Попробовал и это
Код:
ReadProcessMemory(hProcess, ptr($00B27A04), @ipbuf, sizeof(ipbuf), BytesCount);
ReadProcessMemory(hProcess, ptr(ipbuf+$1C), @ipbuf, sizeof(ipbuf), BytesCount);
ReadProcessMemory(hProcess, ptr(ipbuf+$34), @ipbuf, sizeof(ipbuf), BytesCount);
ReadProcessMemory(hProcess, ptr(ipbuf+$38), @ipbuf, sizeof(ipbuf), BytesCount);
ReadProcessMemory(hProcess, ptr(ipbuf+$88), @ipbuf, sizeof(ipbuf), BytesCount);
ReadProcessMemory(hProcess, ptr(ipbuf+(i*$4)), @buf, sizeof(buf), BytesCount);
ReadProcessMemory(hProcess, ptr(buf+$628), @buf, sizeof(buf), BytesCount);
ReadProcessMemory(hProcess, ptr(buf), @_nm, 32, BytesCount);
В результате список заполненый "кракозябрами" Ниодного удобочитаемого имени....
|
|
|
24.01.2012, 19:23
|
#163
|
|
|
|
Разведчик
|
 Регистрация: 23.12.2011
 Сообщений: 42
 Популярность: 192
 Сказал(а) спасибо: 26
Поблагодарили 11 раз(а) в 9 сообщениях
|
Re: РУОФФ Адреса и оффсеты
|
|
|
24.01.2012, 19:57
|
#164
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 07.10.2009
 Сообщений: 496
 Популярность: 2687
 Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
|
Re: РУОФФ Адреса и оффсеты
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
ReadProcessMemory(hProcess, ptr(ipbuf+$38), @ipbuf, sizeof(ipbuf), BytesCount);
|
|
 |
|
 |
|
Не $38, а $38C
Добавлено через 14 минут
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
хм можеш помочь со смещениям а то я не понял хД особино со смещениями
|
|
 |
|
 |
|
Вот, лови:
Функция получения имени предмета:
Код:
public string parItemName(cell_number)
{
switch (parItemType(cell_number)) {
case (0 | 3):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0xe0, 0xc);
case (8 | 9 | 23):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x54, 0xc);
case (17):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x4c, 0x8);
case (2):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0xcc, 0x8);
case (15):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0xe8, 0xc);
case (20 | 27 | 32 | 5 | 10 | 13 | 19 | 31):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x4c, 0x4);
case (43):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x54, 0x4);
case (36):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0xb8, 0x4);
case (41):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x10c, 0x4);
default:
return "Наименование не определено. Тип = " + parItemType(cell_number);
}
}
Функция получения типа предмета:
Код:
public Int32 parItemType(Int32 cell_number)
{
return MemoryManager.ChainReadInt32(adrBaseAdress, 0x1c, 0x34, 0xcac, 0xc, cell_number * 0x4, 0x4);
}
Последний раз редактировалось krukovis; 24.01.2012 в 20:12.
Причина: Добавлено сообщение
|
|
|
Пользователь сказал cпасибо:
|
|
24.01.2012, 21:13
|
#165
|
|
|
|
Разведчик
|
 Регистрация: 23.12.2011
 Сообщений: 42
 Популярность: 192
 Сказал(а) спасибо: 26
Поблагодарили 11 раз(а) в 9 сообщениях
|
Re: РУОФФ Адреса и оффсеты
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Не $38, а $38C
Добавлено через 14 минут
Вот, лови:
Функция получения имени предмета:
Код:
public string parItemName(cell_number)
{
switch (parItemType(cell_number)) {
case (0 | 3):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0xe0, 0xc);
case (8 | 9 | 23):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x54, 0xc);
case (17):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x4c, 0x8);
case (2):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0xcc, 0x8);
case (15):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0xe8, 0xc);
case (20 | 27 | 32 | 5 | 10 | 13 | 19 | 31):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x4c, 0x4);
case (43):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x54, 0x4);
case (36):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0xb8, 0x4);
case (41):
return MemoryManager.ChainReadString(this.adrInventaryCellsStuct + cell_number * this.osItemPtrStep, 100, 0x10c, 0x4);
default:
return "Наименование не определено. Тип = " + parItemType(cell_number);
}
}
Функция получения типа предмета:
Код:
public Int32 parItemType(Int32 cell_number)
{
return MemoryManager.ChainReadInt32(adrBaseAdress, 0x1c, 0x34, 0xcac, 0xc, cell_number * 0x4, 0x4);
}
|
|
 |
|
 |
|
Благодарствую!
кстате че за 2 параметра
osItemPtrStep и adrInventaryCellsStuct???
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 07:57.
|
 |