Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Perfect World
You last visited: Today at 16:58

  • 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 01/26/2010, 16:29   #1366
 
elite*gold: 0
Join Date: Jan 2009
Posts: 137
Received Thanks: 19
Quote:
Originally Posted by Shamanpovt View Post
ППЦ... прочитал за несоклько часов всю эту ветку... Поэтому задам вопрос, на который ответ не нашёл - как заинжектрировать функцию копки ресов? А то не хочется заниматься онанизмом через выборм моба и подмену ID.
Плохо искал

Code:
procedure CullCall(aPParams:PParams); Stdcall;
var
  Address1: pointer;
  P1,p2,p3: dword;
begin
  Address1:=Pointer(W2I_Cull_Call);
  P1:=aPParams^.Param1;           // їуІщАаРН
  p2:=aPParams^.Param6;           //їуІщФЪ°ьё¤µДО»ЦГ
  P3:=aPParams^.Param2;           // Дї±кID
  asm
    pushad
    push 0
    push p1
    push 0
    push p2
    push P3
    call Address1
    add esp,$14
    popad
  end;
end;
procedure TMan.Cull(a,b,c:Cardinal);
var
  aParams : TParams;
  aParamsSize: DWORD;
begin
  aParams.Param1:=a; // їуІщАаРН callci_ID,callci_ID_wp,callci_wp_ID
  aParams.Param2:=b;//їуІщФЪ°ьё¤µДО»ЦГ
  aParams.Param3:=c;// Дї±кID
  aParamsSize:=SizeOf(aParams);
  if GHwnd<>0 then
  begin
    injectfunc(@CullCall, @aParams, aParamsSize);
  end;
end;
Адрессочки тут тоже публиковались. Ровняй напильником и юзай
AlexGD is offline  
Thanks
1 User
Old 01/26/2010, 16:40   #1367
 
elite*gold: 0
Join Date: Jan 2009
Posts: 137
Received Thanks: 19
Quote:
Originally Posted by Barmank View Post
Очень все просто, но работает тока в диалоговом акне для выбора пункта ответа!!!! Код на Delphi

координаты берем так:
X=30
Y=300+i*20
X,Y относительно диалогового окна I номер строки (1я = 0)

К сожалению данный способ, как я уже писал выше, не работает для кнопок в трейд окне
На выходных проверю, прям похоже на фантастику. Хотя были у меня подозрения, что именно там читается не буфер директинпута, но я их даже проверять не стал )

Кстати, а как нажать, например, 7ю строчку?
AlexGD is offline  
Old 01/27/2010, 01:34   #1368
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1
Received Thanks: 0
Ребят, помогите плиз. Пытаюст на автоите сборщик ресов написать, какой адрес для инжектирования использовать? а то найти не могу(((
Vasilij3 is offline  
Old 01/27/2010, 03:40   #1369
 
elite*gold: 0
Join Date: Jan 2009
Posts: 137
Received Thanks: 19
Quote:
Originally Posted by dwar View Post
Добрались таки до массива контролов (или окошек, не важно как называть) … Держите, если будет сие полезно (можно передвигать окна, получать описание предметов под курсором…).

[BA] + $1C + $04:: controls
$08 - Controls, wnd Ptr (PTR, 4b)

[BA] + $1C + $04 + $08:: Controls, wnd
$18 - Current Wnd (PTR, 4b)
$D0 - Movements count (float, 4b)
$D4 - Wnd under mouse (PTR, 4b)
$D8 - Wnd object under mouse (PTR, 4b)
$DC - Wnd object usable under mouse (PTR, 4b)
$E0-E4 - Hint Pos XY (dword, 4x2b)
$218 - Inv wnd (PTR, 4b)
$264 - Dialog wnd (PTR, 4b)
$310 - Trader wnd (PTR, 4b)

[BA] + $1C + $04 + $08 + wnd PTR:: Wnd description
$54-58 - Wnd Pos XY (dword, 4x2b)
$60 - If drag (bool1b) (1: if dragging)
$61 - is draggable (bool1b)(1: true)
$64-68 - Mouse point, drag point (dword, 4x2b)
$6C - Is wnd opened (dword, 4b)
$90 - Usable control (PTR, 4b)
$94 - Wnd object under mouse (PTR, 4b) (same as [BA] + $1C + $04 + $08 + $D8)
$168 - Dialog options (PTR, 4b)

[BA] + $1C + $04 + $08 + $wnd PTR + $168:: Dialog options
$A0 - Dialogs count (dword, 4b)
$B0 - Current dialogs line (dword, 4b)
$E0 - Dialogs count (dword, 4b)

В [BA] + $1C + $04 + $08 + $18 записан указатель на текущее активное окно (по которому кликнули). До параметров окна можно добраться и через wndPTR (например, инвентарь - $218), не важно, открыто оно или нет.

P.S. Надеюсь, после последнего апдейти в данном массиве ничего не поменялось и большая часть указанных адресов действительна
Sorry, but:
$6C - Is wnd opened: BYTE
AlexGD is offline  
Old 01/27/2010, 06:02   #1370
 
elite*gold: 0
Join Date: Dec 2009
Posts: 31
Received Thanks: 3
Quote:
Originally Posted by AlexGD View Post
На выходных проверю, прям похоже на фантастику. Хотя были у меня подозрения, что именно там читается не буфер директинпута, но я их даже проверять не стал )

Кстати, а как нажать, например, 7ю строчку?
I=6 ([номер строки] - 1)

Насчет кнопочек вот инжект починки
Quote:
procedure BtnReparAllCall (aPParams: PParams); stdcall;
var
address ointer;
BaseCallAddress : DWORD;
begin
address := Pointer(aPParams^.Param7);
asm
pushad
push $0FFFFFFFF
push 0
push 0
call address
add esp, $0C
popad
end;
end;
Работает сразу минуя все вопросы выполнил и все починено
Можно с помощью нее и починку из инвентаря сделать, все волшебство в волшебных пузырьках, кх то есть первых 3х пушах, если поковыряться можно найти что туда класть
Также работает и инжект выше, вызов функции происходит уже после нажатия "Да",тока я ёё полноценно запустить не могу, кстати ижект покупки как брат близнец, 1й пуш ХЗ что а 2й количество занятых ячеек при покупке/продаже.
Barmank is offline  
Thanks
1 User
Old 01/27/2010, 06:38   #1371
 
elite*gold: 0
Join Date: Dec 2009
Posts: 31
Received Thanks: 3
Quote:
Originally Posted by Vasilij3 View Post
Ребят, помогите плиз. Пытаюст на автоите сборщик ресов написать, какой адрес для инжектирования использовать? а то найти не могу(((
Quote:
procedure MiningCall(aPParams: PParams); stdcall;
var
BaseCallAddress: DWORD;
MiningCall : Pointer;
ItemSn : DWORD;
Posword;

begin
BaseCallAddress := aPParams^.Param0; // $0098ADDC
ItemSn := aPParams^.Param1;
Pos := aPParams^.Param2;
MiningCall := Pointer(aPParams^.Param7); // $005DADD0

asm
pushad
push 0
push $C01 // ID кирки
push Pos // номер Ячейка
push 0
push ItemSN // SN ресурса
call MiningCall
add esp, 14h
popad
end;
end;
надеюсь сам на автоит переработаешь!
Barmank is offline  
Thanks
2 Users
Old 01/27/2010, 06:58   #1372
 
elite*gold: 0
Join Date: Jan 2009
Posts: 137
Received Thanks: 19
Quote:
Originally Posted by Barmank View Post
I=6 ([номер строки] - 1)
Так строк в окне ж тока 5
AlexGD is offline  
Old 01/27/2010, 07:35   #1373
 
elite*gold: 0
Join Date: Dec 2009
Posts: 31
Received Thanks: 3
Quote:
Originally Posted by AlexGD View Post
Так строк в окне ж тока 5
Прикалываешься?
Barmank is offline  
Old 01/27/2010, 08:19   #1374
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1
Received Thanks: 0
Quote:
Originally Posted by moob1 View Post
Пацаны прикиньте черти с ач взяли и с моего кряка копирайты убрали и запостили там . )))

Я мля в шоке как так ? ))

харе спать вы куда все подевались ? ))
они ещё и забанить могут чтоб втихую как своё выложить))
maxxxx26 is offline  
Old 01/27/2010, 08:34   #1375
 
elite*gold: 0
Join Date: Apr 2009
Posts: 237
Received Thanks: 403
Хм, забавные картинки (+ карты высот) получаются после распаковки файлов с картами (опираясь на наработки luke с




Остается лишь до конца понять, как клиент определяет пересечение с «непроходимыми» объектами (заборы, дома), можно будет смело забыть обо всех трудностях передвижения бота…
dwar is offline  
Old 01/27/2010, 08:43   #1376
 
elite*gold: 0
Join Date: Jan 2009
Posts: 137
Received Thanks: 19
Quote:
Originally Posted by Barmank View Post
Прикалываешься?
С чего бы мне прикалываться-то... В окне диалога с неписем 5 строк. А мне нужно нажать 6ю или 7ю. Или СендМессадж и туда дотягивается с помощью того же волшебства, что и до первых 5ти?

Или жто только к меня в диалоге видно только 5 строк?
AlexGD is offline  
Old 01/27/2010, 09:20   #1377
 
elite*gold: 0
Join Date: Dec 2009
Posts: 31
Received Thanks: 3
Тю дошло, нет это не прокатит, тока если ползунок прокрутить

А что с помощью эвент мауса можно?
Barmank is offline  
Old 01/27/2010, 09:24   #1378
 
elite*gold: 0
Join Date: Dec 2009
Posts: 31
Received Thanks: 3
Quote:
Originally Posted by dwar View Post
Хм, забавные картинки (+ карты высот) получаются после распаковки файлов с картами (опираясь на наработки luke с




Остается лишь до конца понять, как клиент определяет пересечение с «непроходимыми» объектами (заборы, дома), можно будет смело забыть обо всех трудностях передвижения бота…
Кто бы дал код программулины, чтоб в нем покапать и понять как они эту картинку получили.
А программка, что на скрине, твоя или скрин с сайта?
Barmank is offline  
Old 01/27/2010, 10:54   #1379
 
elite*gold: 0
Join Date: Dec 2009
Posts: 31
Received Thanks: 3
Quote:
Originally Posted by dwar View Post
нуууу, опять ... дать исходник программы, дать готового бота...
есть же алгоритм распаковки, - идеальное описание, больше ничего и не надо.
P.S. скомпилированную программу, может быть, в скором времени выложу, но никак не ее код.
я не просил прям все!! (хотя это и было бы замечательно).
Я бы может и сам написал эту программу, но вот знаний маловато, и самостоятельно разобраться вряд ли смогу.
Поэтому и просил хотя бы код чтоб так сказать на примере!
Хотя наверно и это слишком сложно будет
Barmank is offline  
Old 01/27/2010, 13:01   #1380
 
elite*gold: 0
Join Date: Jan 2009
Posts: 137
Received Thanks: 19
dwar. Раз уж все помощи просят, то и я попрошу...
Не могу разобраться как в чат писать... Особенно интересно, как писать в отдельные группы...
Есть идеи, как это сделать?
AlexGD is offline  
Reply




All times are GMT +2. The time now is 16:58.


Powered by vBulletin®
Copyright ©2000 - 2024, 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 ©2024 elitepvpers All Rights Reserved.