Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Perfect World
You last visited: Today at 14:54

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Rus. server

Discussion on Rus. server within the Perfect World forum part of the MMORPGs category.

Reply
 
Old 04/29/2009, 16:33   #166
 
elite*gold: 0
Join Date: Apr 2009
Posts: 49
Received Thanks: 1
Можно ли как-нить пропатчить клиент, чтобы он не проверял crc файлов?
Orion33 is offline  
Old 04/29/2009, 21:56   #167
 
silkytail's Avatar
 
elite*gold: 0
Join Date: Jun 2008
Posts: 142
Received Thanks: 13
а он проверяет ?
silkytail is offline  
Old 04/30/2009, 09:38   #168
 
drShtain's Avatar
 
elite*gold: 0
Join Date: Dec 2008
Posts: 47
Received Thanks: 52
pck файлы не проверяются на контрольную сумму.
В pck есть файл version.sw, в нем записана версия клиента. Вот эту циферку и проверяют на соответствие текущей версии клиента.

Функции пета?.. Ладно, как время найду - покажу как петами управлять.
drShtain is offline  
Old 04/30/2009, 13:31   #169
 
elite*gold: 0
Join Date: Apr 2009
Posts: 49
Received Thanks: 1
Если бы он не проверял, я б не спрашивал. Я сделал себе карту с сеткой координат и перепаковал surfaces.pck. С новым файлом клиент вываливается при загрузке. Лаунчер предлагает сделать полную проверку файлов.
Orion33 is offline  
Old 04/30/2009, 14:15   #170
 
elite*gold: 0
Join Date: Nov 2007
Posts: 9
Received Thanks: 1
Orion33
это не проверка контрольной суммы, а ошибка упаковшика.
где-то на этом форуме выкладывали программу FixNudePatch вот после запаковки натрави эту программу на surfaces.
Lims is offline  
Old 05/01/2009, 14:04   #171
 
elite*gold: 0
Join Date: Apr 2009
Posts: 49
Received Thanks: 1
Финт не прокатил...
Orion33 is offline  
Old 05/01/2009, 22:46   #172
 
elite*gold: 0
Join Date: Jan 2009
Posts: 45
Received Thanks: 12
Народ вот инфа к размышлению:1) walk to a mop/attack the mop:
[[Base Adress]+0x20]+0xA54
- insert mop-id here and do normal attack
- calculate the distance with help of the 3D vectors of char and mop to trigger spells and melee attacks in the right distance

2) walk to and forage mines/ressources/herbs:
[[[[[[Base Adress]+0x20]+0xBFC]0x30]+0x8]+0x20] (kind of "move to" id offset)
- freeze that to ur ressource ID (can be found here: [[[[[[[Base Adress]+0x8]+0x28]0x18]+i*0x4]0x4]0x10C])
- insert random (but valid) mop-id here [[Base Adress]+0x20]+0xA54
- do normal attack
--> char will go to mine/herb and forage it automatically

3) walk to item and pickup:
[[[[[[Base Adress]+0x20]+0xBFC]0x30]+0x8]+0x20] (kind of "move to" id offset)
- freeze that to ur item ID (can be found here: [[[[[[Base Adress]+0x8]+0x24]0x50]+i*0x4]+0x11C])
- insert random (but valid) mop-id here [[Base Adress]+0x20]+0xA54
- do normal attack
--> char will go to item (keep checking distance)
- do pick up
--> char will pick up the item

4) how to do "do normal attack" and "do pick up":
- put the actions to the skill bars (1-6,F1-F8)
- use PostMessage/SendMessage to activate it
example:
PostMessage(hWindow, WM_KEYDOWN, VK_F5, 1);
PostMessage(hWindow, WM_KEYDOWN, Ord('5'), 1);
notice:
dont use other functions unlike u want to loose the possibility to minimize the game

5) set 0x0 to the so called "move to" id offset to let the char stop

6) with the same method u can walk to every objekt (NPC,Player,Ressource,Item,Mop)
just check the distance and stop early enough (to not attack a player for example)
maybe "do default attack" also works for start talking with npc's, but haven't tested that until now

For me it would be very interesting to know how u can insert such a "unfreeze" feature like the Revo Bot coder did. I researched on it but found no suitable way. A possibility would be to inject a dll into the game, hook the WinAPI call which gives pw the information (not) being in focus and return wrong values (always in focus). But i dont want to use that method, cuz i want to stay fully extern. RevoBut just uses DLL injection to get the D3D shit work (especially the menu).

thx in advance
Megamorph

Для русской версии 1.34 смешения для пункта 2:
[[[[[[Base Adress]+0x20]+0xBB8]0x30]+0x8]+0x20]
obiov is offline  
Old 05/02/2009, 11:34   #173
 
elite*gold: 0
Join Date: Apr 2009
Posts: 49
Received Thanks: 1
А относительные смещения для версий не одинаковые? Скажем, разница адреса ХП отличается на столько же, сколько разница координат и тп. Не проверял?
Orion33 is offline  
Old 05/02/2009, 21:24   #174
 
drShtain's Avatar
 
elite*gold: 0
Join Date: Dec 2008
Posts: 47
Received Thanks: 52
*Чета на флуд потянуло...*

> Orion33
Эээ... а теории компиляции кода мы не учены, нэ? О__о
Линкер C++ сам задает положения ячеек для переменных, прямо во время 3 прохода по объектному файлу. На самом деле чистой случайностью будет совпадение адреса одной и той же переменной при двух билдах даже подряд.

Такс... кто то там обещался рассказать ап управлении петами... Там на орионе еще никого не зашибло торпедой с мной написанными мозгами? )))
Петом на самом деле просто управлять:
Code:
    PostMessage(hWTarget,WM_SYSKEYDOWN,(WPARAM)VK_MENU,(LPARAM)0x60380001);
    PostMessage(hWTarget,WM_SYSKEYDOWN,(WPARAM)Key,(LPARAM)0x20020001);
// Тут кое что было, пока этого по моему видеть не стоит... это реверсом находится...
    SendMessage(hWTarget,WM_SYSKEYDOWN,(WPARAM)Key,(LPARAM)0x60020001);
    SendMessage(hWTarget,WM_SYSKEYUP,(WPARAM)Key,(LPARAM)0xE0020001);
    SendMessage(hWTarget,WM_KEYUP,(WPARAM)VK_MENU,(LPARAM)0xC0380001);
Думаю, ясно что это за Key такой.
drShtain is offline  
Old 05/02/2009, 23:20   #175
 
elite*gold: 0
Join Date: Jan 2009
Posts: 45
Received Thanks: 12
Совместив данные о этих смещениях для RU клиента версии 1.34:
[[[[[Base Adress]+0x20]+0xBB8]0x30]+0x8] = УК указатель для перемещения
[[[[[[Base Adress]+0x20]+0xBB8]0x30]+0x8]+0x20] = записать ID шахты или растения

с тем что мы обсуждали в post #152 -
получил сбор ресурсов и трав.

УК Переписываем указатель по адресу Base(925484)+$20+$BB8+$14 (Для v 1.34 RU) -бежит и собирает ресы.
К вещам тоже бежит но не поднимает - пишет нет струмента.

Вот не получилось пока вытащить это смещение:
[[Base Adress]+0x20]+0xA54
- insert mop-id here and do normal attack
- calculate the distance with help of the 3D vectors of char and mop to trigger spells and melee attacks in the right distance.
Если кто знает для русских клиентов любой версии подскажите, пожалуйста.
obiov is offline  
Old 05/03/2009, 00:54   #176
 
silkytail's Avatar
 
elite*gold: 0
Join Date: Jun 2008
Posts: 142
Received Thanks: 13
Quote:
Originally Posted by drShtain View Post
*Чета на флуд потянуло...*
Эээ... а теории компиляции кода мы не учены, нэ? О__о
Линкер C++ сам задает положения ячеек для переменных, прямо во время 3 прохода по объектному файлу. На самом деле чистой случайностью будет совпадение адреса одной и той же переменной при двух билдах даже подряд.
Есичо, то смещение конкретной переменной относительно базы класса является величиной фиксированной, и не изменяется до тех пор, пока ты не добавишь/удалишь переменные по тексту перед этой.
silkytail is offline  
Old 05/03/2009, 06:13   #177
 
drShtain's Avatar
 
elite*gold: 0
Join Date: Dec 2008
Posts: 47
Received Thanks: 52
> silkytail
Эй... йэ!.. для начала, класс, юнион или структура изначально сами является типом и представлены неразрывным отрезком памяти; и рассматривать их советую как единое и неразрывное целое. То что там у них внутри - это дело уже десятое. Поля классов уже напрямую зависят от прихоти кодеров, но никак не от средств сборки кода.

> Orion33
Да.. до меня ужо дошло что не о том подумал, пора завязывать с просмотром форума на ночь ))))))

Относительно версии 1.3 и 1.4 клиента:
Если в 1.3 размер класса игрока составляет 0x0CC4, то в 1.4 версии - уже 0x0СE8.
Первые 20 байт дополняются точно перед полем с мировым индексом перса [WID], далее еще 8 байт сразу после счетчика ярости, еще 8 байт - точно после идентификаторов хирок. И наконец последние 4 байта - прямо перед указателем текущего скилла с 6-иклавишной панельки. Первый вектор координат при этом не сменится, а вот остальные 3 поменяют свое положение.
Класс моба тоже увеличился с переходом на новую версию, там кажется всего 8б добавилось прямо перед полем с WID моба, соответственно так же потолстели и классы НПЦ, петов и юзерков.
Вот так.

> obiov
Quote:
К вещам тоже бежит но не поднимает - пишет нет струмента.
А он у тебя по вписанному WID моба бежит атаковать стандартной атакой? - вроде не должен.
Дело в том, что эти WID надо продублировать еще в одном месте, в отдельном от перса, почти в самом корне дерева классов игры. (просто на вскидку не помню точные адреса переходов..)
drShtain is offline  
Thanks
1 User
Old 05/03/2009, 12:52   #178
 
elite*gold: 0
Join Date: Jan 2009
Posts: 45
Received Thanks: 12
>drShtain
Спасибо. Очень хорошо что появился человек с глубокими знаниями структуры программирования.

"Дело в том, что эти WID надо продублировать еще в одном месте, в отдельном от перса, почти в самом корне дерева классов игры. (просто на вскидку не помню точные адреса переходов..)"
Да, этого места как раз и не хватает для полного взятия в цель моба. На соседних ветках для других версий народ выдал инфу: [[Base Adress]+0x20]+0xA54
Для RU версий пока не смог найти.
Спасибо за помощь.
obiov is offline  
Old 05/03/2009, 14:17   #179
 
elite*gold: 0
Join Date: Apr 2009
Posts: 49
Received Thanks: 1
Поскольку кодить я не умею, но сильно хочу участвовать в процессе, предлагаю назначить меня бета-тестером
Orion33 is offline  
Old 05/03/2009, 22:40   #180
 
BuBucekTop's Avatar
 
elite*gold: 0
Join Date: Nov 2007
Posts: 160
Received Thanks: 28
drShtain, мне вот что интересно - при порте в инстанс (данж, гуйму, хх) слетают к чертям списки мобов, игроков и лута... Ты, случаем не в курсе, что с ними происходит ? Заодно вопросец - где искать идентификатор локации, на которой находится игрок ?? Хочу прикрутить к своему радару смену карт соответственно смене локаций.
BuBucekTop is offline  
Reply




All times are GMT +1. The time now is 14:55.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.