[Руоф] Адреса и оффсеты - Разработка ПО для Perfect World - Бюро разработчиков Zhyk.Ru: создание ботов, снифферов и прочих программ для Perfect World
04.01.2011, 14:42
#1
Главнокомандующий
Регистрация: 20.01.2010
Сообщений: 1,539
Популярность: 22780
Золото Zhyk.Ru: 600
Сказал(а) спасибо: 43
Поблагодарили 1,717 раз(а) в 538 сообщениях
[Руоф] Адреса и оффсеты
Оффсеты для текущей версии руофа
*
Все адреса и оффсеты представлены в Hex(шестнадцатиричной системе) .
*
Размер ячейки по умолчанию 4b - dword / uint .
Термины / Аббревиатура / Справка :
развернуть BA - BaseAddress - Базовый адрес
GA - GameRun - начало игровой структуры
[ BA] - Значение по адресу BA
Квадратные скобки [ ] означают, что берется значение по адресу, указанному внутри скобок.
GA = [BA] + 1C
Для чтения какого-то значения из памяти, обычно необходима целая цепочка оффсетов, пример такой цепочки:
BA +1C +20 +608 +0
Развернутый вид этой записи:
[[[[[BA] +1C] +20] +608] +0]
Пошаговая инструкция по чтению:
Читаем значение по адресу BA
Прибавляем к полученному значению 1C
Читаем значение по полученному адресу (1ое значение + 1С)
Прибавляем 20
Читаем значение
Прибавляем 608
Читаем значение
Прибавляем 0
Читаем значение
(+0)^J - специальный символ, отображающий количество (J) страниц (+0) в связанном списке.
Запись BA +218 +8 +[I*4] + (+0)^J +4 для разных значений J расшифровывается как:
J = 0: BA +218 +8 +[I*4] +4
J = 1: BA +218 +8 +[I*4] +0 +4
J = 2: BA +218 +8 +[I*4] +0 +0 +4
J = 3: BA +218 +8 +[I*4] +0 +0 +0 +4
J = 4: BA +218 +8 +[I*4] +0 +0 +0 +0 +4
J = 5: ...
Продолжать, пока не будут найдены все элементы. Элементы неравномерно распределены по всему массиву. Количество элементов можно посмотреть по адресу, указанному в первой строке описания каждой структуры.
Адреса / Оффсеты :
9C0E6C - BA
9C1514 - GA
9C1984 - UnfreezeFlag (0 - Inactive; 1 - Active)
9C2078+[(Lvl)*4] Exp for next Level.
9C4008 Start chat address
9C400С End chat address
9C4010 Max messages (199 - MaxMsg)
9C4014 Number of messages
9C4028 Number of messages (+ deleted)
9C4008 +[I*C+8] +0 - Messages (UText / Unicode String) (I in [0..N])
Структура игрока :
GA +20: HostPlayer Struct +3C LocX (float)
+40 LocZ (float)
+44 LocY (float)
+7C See: +3C
+80 See: +40
+84 See: +44
+458 ID
+464 PlayerLvL
+46С HP
+470 MP
+474 Current EXP
+478 Current Spirit
+480 Fury
+494 Vit
+498 Int
+49C Str
+4A0 Dex
+4A4 MaxHP
+4A8 MaxMP
+4C4 Accuracy
+4C8 Min. P. Atk.
+4CC Max. P. Atk.
+500 Min. M. Atk.
+504 Max. M. Atk.
+508 Def. Metal
+50С Def. Wood
+510 Def. Water
+514 Def. Fire
+518 Def. Earth
+51C P. Def.
+520 Evasion
+524 MaxFury
+528 Money
+530 EquipWeapon
+534 EquipHelmet
+538 EquipNecklace
+53C EquipManteau
+540 EquipShirt
+544 EquipWaistAdorn
+548 EquipFootwear
+54C EquipBoots
+550 EquipWristBracer
+554 EquipRing1
+558 EquipRing2
+55С EquipProjectile
+560 EquipFly
+564 Equip BodyFashion
+568 Equip Legwear Fashion
+56C Equip Special Footwears
+570 Equip Arm Fashion
+574 Equip Head
+578 EquipPigment
+57C EquipSmiley
+580 Equip GuardianCharm
+584 Equip SpiritCharm
+588 EquipX1
+58C EquipGenie
+590 EquipX2
+598 Reputation
+5D4 ClanID
+608 +0 PlayerName (UText / Unicode String)
+610 ClassID
+614 Gender (1b) (0 - Male; 1 - Female)
+61C WalkMode (1b) (0 - Ground; 1 - Swiming; 2 - Flying)
+620 RunMode (1b) (0 - Walk; 1 - Run)
+668 Meditation (1b) (0 - Walking; 10 - Flying; 20 - Meditation)
+6C4 Skilling
+944 Time Mining
+9B4 HP Potion CD
+9BC MP Potion CD
+9E4 PlayerInfo CD
+9EC Pet Potion CD
+AF0 Duration of life/recall of a pet
+AF8 TargetID
+B3C GroundZ
+BF4 Jumping
+1074 +188 TargetX (float)
+1074 +18C TargetZ (float)
+1074 +190 TargetY (float)
+100C Number of active skills
+1024 Number of passive skills
Структура членов группы :
+6A8 +14 +[I*4]: (I in [1..5]) развернуть +C PmId
+10 PmLvl
+1C PmHP
+20 PmMP
+24 PmMaxHP
+28 PmMaxMP
+34 PmLocX (float)
+38 PmLocZ (float)
+3C PmLocY (float)
+6C4 Skilling
+944 Time Mining
+9B4 HP Potion CD
+9BC MP Potion CD
+9E4 PlayerInfo CD
+9EC Pet Potion CD
+AF0 Duration of life/recall of a pet
+AF8 TargetID
+B3C GroundZ
+BF4 Jumping
Структура инвентаря :
+C3C +C +[I*4]
Структура снаряжения (надетые вещи) :
+С40 +C +[I*4]
Структура инвентаря квестовых предметов :
+C44 +C +[I*4]
Структура снаряжения другого игрока (Просмотр игрока) :
+C98 +C +[I*4] развернуть +8 ItemID
+10 ItemNumber
+40 ItemDescription
(I in [0..24]): развернуть
00 - оружие (EquipWeapon)
01 - шлем (EquipHelmet)
02 - ожерелье (EquipNecklace)
03 - накидка (EquipManteau)
04 - плащ (EquipShirt)
05 - пояс (EquipWaistAdorn)
06 - штаны (EquipFootwear)
07 - обувь (EquipBoots)
08 - браслеты (EquipWristBracer)
09 - кольцо 1 (EquipRing1)
10 - кольцо 2 (EquipRing2)
11 - боеприпасы (EquipProjectile)
12 - полёт (EquipFly)
13 - стиль плащ (Body Fashion)
14 - стиль штаны (Legwear Fashion)
15 - стиль модная обувь (Special Footwears)
16 - стиль перчатки (Arm Fashion)
17 - стиль модная косынка (Head)
18 - книга (EquipPigment)
19 - рупор (смайлы) (EquipSmiley)
20 - амулет (Guardian Charm)
21 - идол (Spirit Charm)
22 - сборник цитат (EquipX1) *
23 - джинн (EquipGenie)
24 - брелок (EquipX2) *
Структура действия :
+FE0 развернуть +C Stand Action
+14 Current Action
+14 +10 P.Target ID *
+30 +4 MovePoint Action
+30 +4 + 20 Destination LocX
+30 +4 + 24 Destination LocZ
+30 +4 + 28 Destination LocY
+30 +8 MoveTarget Action
+30 +8 +20 Destination ID
+30 +10 +30 M.Target ID *
+30 +2C Mining Action
+30 +30 PetEvocative Action
Структура питимоца :
+FF8 развернуть +8 IsCalled? (FFFFFFFF - not Called, 0-9 Pet Number)
+38 CurrentPetID
+40 PetMode (0 - Defence, 1 - Agression, 2 - Manual)
+[I*4 + 10]: Pet Array (I in [0-9] - Pet Cell) развернуть +4 PetLoyalty
+8 PetHungry
+1C PetHP(%) (float)
+34 +0 PetName
+38 PetHP
+(J*10+34) PetSkill CD (J in [1..4])
Структура скилов :
+1008 +[I*4] (I in [0..N]) развернуть +4 Skill ID
+8 Skill ID
+C Skill Lvl
+10 Skill Cool Down
+14 Skill Max Cool Down
Структура / Список игроков рядом :
GA +8 +20 +18 +[I*4] + (+0)^J +4: (I in [0..300]) GA +8 +20 +14: - Players count
+3C PlayerLocX (float)
+40 PlayerLocZ (float)
+44 PlayerLocY (float)
+35C + [I*2] PlayerBuffs (I in [0..N]) (1b)
+360 PlayerBuffs Number
+458 PlayerId
+464 PlayerLvl
+46C PlayerHP
+470 PlayerMP
+4A4 PlayerMaxHP
+4A8 PlayerMaxMP
+5D4 PlayerClanID
+608 +0 PlayerName (UText / Unicode String)
+610 PlayerClassID
+614 PlayerGender
+61C PlayerWalkMode
+620 RunMode (1b) (0 - Walk; 1 - Run)
+6С8 PlayerMTargetID
Структура / Список мобов :
GA +8 +24 +18 +[I*4] + (+0)^J +4: (I in [0..300]) GA +8 +24 +14: - Mobs count
+3C MobLocX (float)
+40 MobLocZ (float)
+44 MobLocY (float)
+B4 MobType (6 - mob; 7 - NPC; 9 - Pet)
+11C MobWorldID
+120 MobID
+12C MobHP
+164 MobMaxHP
+225 MobFeature (0- None; 1 - Accelerating; 2 - Pacifist; 3 - Enh. physical protection; 4 - Enh. magical protection; 5 - Enh. physical attack; 6 - Enh. magical attack; 7 - Berserk; Enh. Life; 9 - Weakness)
+240 See: +225
+24C +0 MobName (UText / Unicode String)
+2B8 MobAction (1 - Passive; 2 - P. Attacks; 3 - M. Attacks; 4 - Dies; 5 - Moves)
+2D4 MobPTargetID
+2D8 MobMTargetID
+2DC Mob Attack flag (1b)
+310 + [I*2] MobBuffs (I in [0..N]) (1b)
+314 Mob Buffs Count
Структура / Список лута :
GA +8 +28 +18 +[I*4] + (+0)^J +4: (I in [0..300]) GA +8 +28 +14: - Items count
+3C ItemLocX (float)
+40 ItemLocZ (float)
+44 ItemLocY (float)
+10C ItemWID (Sn - Serial Number)
+110 ItemID
+14C ItemType (1 - Money; 2 - Mine; Other - Item)
+164 +0 ItemName (UText / Unicode String)
[
Ссылки могут видеть только зарегистрированные пользователи. ].
________________
Fireball - Быстрое снятие и загрузка скриншотов на хостинг.
Последний раз редактировалось Dinmaite; 06.01.2011 в 21:21 .
5 пользователя(ей) сказали cпасибо:
19.01.2011, 04:48
#2
Разведчик
Регистрация: 17.11.2010
Сообщений: 16
Популярность: 10
Сказал(а) спасибо: 14
Поблагодарили 0 раз(а) в 0 сообщениях
Re: [Руоф] Адреса и оффсеты
Еще помнится мелькала такая фигня как длинна имени моба
а есть такая тока для игрока?
25.01.2011, 02:07
#3
Пехотинец
Регистрация: 27.02.2010
Сообщений: 72
Популярность: 71
Сказал(а) спасибо: 27
Поблагодарили 35 раз(а) в 16 сообщениях
Re: [Руоф] Адреса и оффсеты
Цитата:
Еще помнится мелькала такая фигня как длинна имени моба
а есть такая тока для игрока?
Максимальная длинна имени игрока 10 символов (если не ошибаюсь, конечно). При извлечении значения в массив, лично у меня получается, что каждая буква в имени персонажа ложится в каждый второй порядковый номер массива. Т.е. ник игрока
Test в массиве выглядит так:
Код:
Data[0]='T';
Data[2]='e';
Data[4]='s';
Data[6]='t';
Соответсвенно чтобы обозначить конец имени персонажа, можно использовать цикл, скажем:
Код:
i:=0;
Repeat
NameOfChar:=NameOfChar+String(Data[i]);
i:=I+2;
until Ord(Data[i])=0;
25.01.2011, 11:49
#4
Главнокомандующий
Регистрация: 20.01.2010
Сообщений: 1,539
Популярность: 22780
Золото Zhyk.Ru: 600
Сказал(а) спасибо: 43
Поблагодарили 1,717 раз(а) в 538 сообщениях
Re: [Руоф] Адреса и оффсеты
alonwoolf , не нужна длина имени моба или любой строки. Клиент использует UnicodeString c нулевым прерывателем в конце.
DAcorp , Вашим методом, русский ник не прочитается.
Правильно делать так:
1. Читаем память заданного размера, к примеру 32 байта - это 16 символов.
2. Преобразуем байты в UnicodeString
3. Если строка содержит 00 ( '\0' ), как в делфи выглядит х3, тогда режем от начала строки до положения '\0'
Если не содержит, значит оставляем как есть.
________________
Fireball - Быстрое снятие и загрузка скриншотов на хостинг.
25.01.2011, 15:32
#5
Пехотинец
Регистрация: 27.02.2010
Сообщений: 72
Популярность: 71
Сказал(а) спасибо: 27
Поблагодарили 35 раз(а) в 16 сообщениях
Re: [Руоф] Адреса и оффсеты
25.01.2011, 15:40
#6
Главнокомандующий
Регистрация: 20.01.2010
Сообщений: 1,539
Популярность: 22780
Золото Zhyk.Ru: 600
Сказал(а) спасибо: 43
Поблагодарили 1,717 раз(а) в 538 сообщениях
Re: [Руоф] Адреса и оффсеты
DAcorp ,
9C2078+[(Lvl)*4] = 9C2078+[(свой уровень, к примеру: 50)*(умножить на )4] = 9C2078 + 200.
С I тоже самое, только вместо I - значение итератора.
________________
Fireball - Быстрое снятие и загрузка скриншотов на хостинг.
25.01.2011, 15:58
#7
Пехотинец
Регистрация: 27.02.2010
Сообщений: 72
Популярность: 71
Сказал(а) спасибо: 27
Поблагодарили 35 раз(а) в 16 сообщениях
Re: [Руоф] Адреса и оффсеты
TBX1n , странно... Я в принципе тоже так подумал... Но когда описал, хрень какая-то вылезла за место 7400... Лан, буду искать ошибку, спасибо!
19.02.2011, 20:57
#8
Разведчик
Регистрация: 27.12.2010
Сообщений: 7
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Re: [Руоф] Адреса и оффсеты
В структуре членов группы не понятно... может там
"+6C4 Skilling
+944 Time Mining и т.д." по ошибке прописались...
Конечно формировать пати из ботов - это уже перебор, но если есть информация, то лучше ее все же загнать в заголовочный файл...
21.02.2011, 09:35
#9
Старший сержант
Регистрация: 22.11.2010
Сообщений: 181
Популярность: 2712
Сказал(а) спасибо: 504
Поблагодарили 518 раз(а) в 201 сообщениях
Re: [Руоф] Адреса и оффсеты
Вопрос: а как это всё делать(через какую программу) и что с помощью этого можно сделать.
21.02.2011, 12:19
#10
Фельдмаршал
Регистрация: 13.08.2009
Сообщений: 1,004
Популярность: 25098
Золото Zhyk.Ru: 350
Сказал(а) спасибо: 110
Поблагодарили 830 раз(а) в 395 сообщениях
Re: [Руоф] Адреса и оффсеты
Что "все это"?
________________
Ни одно доброе дело не остается безнаказанным.
Программы:
PW: Флудобот , Девизхак , OutFocusBot , OutFocusBot ver 3 (freepvp) , PWMultiHack ver 3 , AutoRespawn .
JD: JDMultiHack , JDFlooder , JDBot .
Статьи: Отключаем UAC , Ищем базовый адрес Perfect World , "Патчер памяти" или "Пишем флайхак" , "Патчер памяти 2" или "Пишем Джампхак" , "Поиск инжектов" или "Наш код в чужом процессе"
21.02.2011, 14:44
#11
Пехотинец
Регистрация: 16.01.2010
Сообщений: 97
Популярность: 483
Сказал(а) спасибо: 83
Поблагодарили 93 раз(а) в 68 сообщениях
Re: [Руоф] Адреса и оффсеты
Последний раз редактировалось UniDemoN; 21.02.2011 в 14:48 .
Причина: Добавлено сообщение
Пользователь сказал cпасибо:
21.02.2011, 16:19
#12
Старший сержант
Регистрация: 22.11.2010
Сообщений: 181
Популярность: 2712
Сказал(а) спасибо: 504
Поблагодарили 518 раз(а) в 201 сообщениях
Re: [Руоф] Адреса и оффсеты
Я так понял что в этой теме выложенны некие параметры игры, то есть использую эти адреса и оффсеты мы можем изменить ту или иную характеристику игры.
21.02.2011, 16:39
#13
Фельдмаршал
Регистрация: 13.08.2009
Сообщений: 1,004
Популярность: 25098
Золото Zhyk.Ru: 350
Сказал(а) спасибо: 110
Поблагодарили 830 раз(а) в 395 сообщениях
Re: [Руоф] Адреса и оффсеты
Изменить далеко не каждую, считать любую.
Вообще эта тема для разработчиков, пишущих ботов.
________________
Ни одно доброе дело не остается безнаказанным.
Программы:
PW: Флудобот , Девизхак , OutFocusBot , OutFocusBot ver 3 (freepvp) , PWMultiHack ver 3 , AutoRespawn .
JD: JDMultiHack , JDFlooder , JDBot .
Статьи: Отключаем UAC , Ищем базовый адрес Perfect World , "Патчер памяти" или "Пишем флайхак" , "Патчер памяти 2" или "Пишем Джампхак" , "Поиск инжектов" или "Наш код в чужом процессе"
Пользователь сказал cпасибо:
22.02.2011, 11:28
#14
Сержант
Регистрация: 18.12.2009
Сообщений: 152
Популярность: 1075
Сказал(а) спасибо: 45
Поблагодарили 204 раз(а) в 67 сообщениях
Re: [Руоф] Адреса и оффсеты
Никто не знает какие значения может принимать
Код:
+2DC Mob Attack flag (1b)
И можно ли узнать как-то чем моб собирается ударить?
Поясню для чего это нужно. Хочу автоматизировать процесс сбивания каста у боссов.
22.02.2011, 21:26
#15
Разведчик
Регистрация: 27.12.2010
Сообщений: 7
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Re: [Руоф] Адреса и оффсеты
Дополнение: оффсеты связаны с ориентацией песа в пространстве. Ось Z всегда равна 0, когда игрок "на двух ногах", и начинает изменяться когда становится на "четыре лапы".
// GA + 0x20 +
float AngleX; // 0x0c
float AngleZ; // 0x10
float AngleY; // 0x14
Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 13:25 .