Регистрация Главная Сообщество
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

правильное у меня смещение или нет Delphi

-

Общение разработчиков

- Программирование для Perfect World, общение и обсуждене разработок

Ответ
 
Опции темы
Старый 11.01.2016, 18:16   #1
 Разведчик
Аватар для fer@bk.ru
 
fer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краях
Регистрация: 17.01.2011
Сообщений: 1
Популярность: -290
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
Exclamation правильное у меня смещение или нет Delphi

подскажите пожалуйста как узнать лвл персонажа

ReadProcessMemory (hProcess, Pointer($00D6F84C), @Lvel, sizeof(Lvel), NoB);
ReadProcessMemory (hProcess, Pointer(Nikname+$1C), @Lvel, sizeof(Lvel), NoB);
ReadProcessMemory (hProcess, Pointer(Nikname+$4C4), @Lvel, sizeof(Lvel), NoB);
LvL:= Integer(Lvel);
sLabel10.caption:= IntToStr(LvL);

правильное у меня смещение или нет

хочу узнать LvL персонажа
  Ответить с цитированием
Старый 12.01.2016, 12:54   #2
 Пехотинец
Аватар для diagnost
 
diagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражания
Регистрация: 03.01.2010
Сообщений: 95
Популярность: 1542
Сказал(а) спасибо: 110
Поблагодарили 460 раз(а) в 288 сообщениях
 
По умолчанию Re: правильное у меня смещение или нет Delphi

1C на 28 поменяй
  Ответить с цитированием
Старый 12.01.2016, 20:35   #3
 Разведчик
Аватар для fds255
 
fds255 скоро будет известенfds255 скоро будет известенfds255 скоро будет известенfds255 скоро будет известенfds255 скоро будет известен
Регистрация: 23.06.2012
Сообщений: 43
Популярность: 427
Сказал(а) спасибо: 18
Поблагодарили 59 раз(а) в 35 сообщениях
 
По умолчанию Re: правильное у меня смещение или нет Delphi

и Nikname вместо Lvel в первой и второй строке поставь
________________

Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).


Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
  Ответить с цитированием
Старый 14.01.2016, 00:20   #4
 Разведчик
Аватар для fer@bk.ru
 
fer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краях
Регистрация: 17.01.2011
Сообщений: 1
Популярность: -290
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: правильное у меня смещение или нет Delphi

Кто знает рабочий офсет на :
MaxHP =
MaxMP =
  Ответить с цитированием
Старый 14.01.2016, 14:11   #5
 Пехотинец
Аватар для diagnost
 
diagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражания
Регистрация: 03.01.2010
Сообщений: 95
Популярность: 1542
Сказал(а) спасибо: 110
Поблагодарили 460 раз(а) в 288 сообщениях
 
По умолчанию Re: правильное у меня смещение или нет Delphi

Цитата:
Сообщение от [Ссылки могут видеть только зарегистрированные пользователи. ]Посмотреть сообщение
Кто знает рабочий офсет на :
MaxHP =
MaxMP =

Смотри тут
  Ответить с цитированием
Старый 14.01.2016, 22:45   #6
 Разведчик
Аватар для fer@bk.ru
 
fer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краях
Регистрация: 17.01.2011
Сообщений: 1
Популярность: -290
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
Exclamation Re: правильное у меня смещение или нет Delphi

ещё один вопрос

читаю из памяти координаты
//---x---------------------------------------------
ReadProcessMemory (hProcess, Pointer($00D6F84C), @WLocX, sizeof(WLocX), NoB);
ReadProcessMemory (hProcess, Pointer(WLocX+$28), @WLocX, sizeof(WLocX), NoB);
ReadProcessMemory (hProcess, Pointer(WLocX+$03C), @WLocX, sizeof(WLocX), NoB);
LocX:= Integer(WLocX);
//=end-------------------------------------------

//---y---------------------------------------------
ReadProcessMemory (hProcess, Pointer($00D6F84C), @WLocY, sizeof(WLocY), NoB);
ReadProcessMemory (hProcess, Pointer(WLocY+$28), @WLocY, sizeof(WLocY), NoB);
ReadProcessMemory (hProcess, Pointer(WLocY+$044), @WLocY, sizeof(WLocY), NoB);
LocY:= Integer(WLocY);

//=end-------------------------------------------

//---z---------------------------------------------
ReadProcessMemory (hProcess, Pointer($D6F0AC), @WLocZ, sizeof(WLocZ), NoB);
ReadProcessMemory (hProcess, Pointer(WLocZ+$28), @WLocZ, sizeof(WLocZ), NoB);
ReadProcessMemory (hProcess, Pointer(WLocZ+$040), @WLocZ, sizeof(WLocZ), NoB);
LocZ:= Integer(WLocZ);

хочу вывести их в привычный вид как в клиенте около карты

пытаюсь через вот это формулу
type point=record
x,y,zouble;
end;
function ProcToGame(point)oint;
begin
ProcToGame.X:=(p.X+4000)/10;
ProcToGame.Y:=(p.Y+5500)/10;
ProcToGame.Z:=p.Z/10;
end;
function GameToProc(goint)oint;
begin
GameToProc.X:=g.X*10-4400;
GameToProc.Y:=g.Y*10-5500;
GameToProc.Z:=g.Z*10;
end;

но не понимаю как мне перевести полученное значение допустим
LocY:= Integer(WLocY); перевести в привычный вид значение оси Y

может кто подскажет как через неё переводить значение
  Ответить с цитированием
Старый 16.01.2016, 09:24   #7
 Сержант
Аватар для pw.assistant
 
pw.assistant излучает ауруpw.assistant излучает ауруpw.assistant излучает ауруpw.assistant излучает ауруpw.assistant излучает ауруpw.assistant излучает ауру
Регистрация: 16.02.2012
Сообщений: 105
Популярность: 651
Сказал(а) спасибо: 19
Поблагодарили 39 раз(а) в 31 сообщениях
 
По умолчанию Re: правильное у меня смещение или нет Delphi

TLocCoord = record
x: single;
y: single;
z: single;
walkmode: byte;
end;

// преобразование из вычисляемых координат в отображаемые в игре
function CoordX(XPos: Single): Single;
begin
Result := (4000 + XPos) / 10;
end;

function CoordY(YPos: Single): Single;
begin
Result := (5500 + YPos) / 10;
end;

function CoordZ(ZPos: Single): Single;
begin
Result := ZPos / 10;
end;

// преобразование из отображаемых в игре в вычисляемые координаты
function XCoord(XPos: Single): Single;
begin
Result := XPos * 10 - 4000;
end;

function YCoord(YPos: Single): Single;
begin
Result := YPos * 10 - 5500;
end;

function ZCoord(ZPos: Single): Single;
begin
Result := ZPos * 10;
end;

// получить строку с координатами как в игре
function LocCoordToStr(C: TLocCoord; Digits: Integer): String;
begin
Result := FloatToStrF(CoordX(C.X), ffFixed, 7, Digits) + ' ' + FloatToStrF(CoordY(C.Y), ffFixed, 7, Digits) + ' ' + FloatToStrF(CoordZ(C.Z), ffFixed, 7, Digits) + ' ' +
IfThen(C.WalkMode = 2, 'Air', IfThen(C.WalkMode = 1, 'Water', IfThen(C.WalkMode = 0, 'Ground', '')));
end;
________________
backup - акт проявления трусости
  Ответить с цитированием
Старый 23.01.2016, 14:36   #8
 Разведчик
Аватар для fer@bk.ru
 
fer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краяхfer@bk.ru неизвестен в этих краях
Регистрация: 17.01.2011
Сообщений: 1
Популярность: -290
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
Question Re: правильное у меня смещение или нет Delphi

Цитата:
Сообщение от pw.assistantПосмотреть сообщение
TLocCoord = record
x: single;
y: single;
z: single;
walkmode: byte;
end;

// преобразование из вычисляемых координат в отображаемые в игре
function CoordX(XPos: Single): Single;
begin
Result := (4000 + XPos) / 10;
end;

function CoordY(YPos: Single): Single;
begin
Result := (5500 + YPos) / 10;
end;

function CoordZ(ZPos: Single): Single;
begin
Result := ZPos / 10;
end;

// преобразование из отображаемых в игре в вычисляемые координаты
function XCoord(XPos: Single): Single;
begin
Result := XPos * 10 - 4000;
end;

function YCoord(YPos: Single): Single;
begin
Result := YPos * 10 - 5500;
end;

function ZCoord(ZPos: Single): Single;
begin
Result := ZPos * 10;
end;

// получить строку с координатами как в игре
function LocCoordToStr(C: TLocCoord; Digits: Integer): String;
begin
Result := FloatToStrF(CoordX(C.X), ffFixed, 7, Digits) + ' ' + FloatToStrF(CoordY(C.Y), ffFixed, 7, Digits) + ' ' + FloatToStrF(CoordZ(C.Z), ffFixed, 7, Digits) + ' ' +
IfThen(C.WalkMode = 2, 'Air', IfThen(C.WalkMode = 1, 'Water', IfThen(C.WalkMode = 0, 'Ground', '')));
end;

не как не получается вывести значение в listbox как в игре постоянно э
отличаются
пытаюсь так вывести хоть в label

ReadProcessMemory (hProcess, Pointer($00D6F0AC), @z0, 4, NoB);
ReadProcessMemory (hProcess, Pointer(z0+$1C), @z1, 4, NoB);
ReadProcessMemory (hProcess, Pointer(z1+$28), @z2, 4, NoB);
ReadProcessMemory (hProcess, Pointer(z2+$40), @z, 4, NoB);
wz:=Integer(z);
slabel9.caption:= FloatToStr(CoordZ(Z));

где я допустил ошибку
  Ответить с цитированием
Старый 24.01.2016, 10:05   #9
 Пехотинец
Аватар для diagnost
 
diagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражания
Регистрация: 03.01.2010
Сообщений: 95
Популярность: 1542
Сказал(а) спасибо: 110
Поблагодарили 460 раз(а) в 288 сообщениях
 
По умолчанию Re: правильное у меня смещение или нет Delphi

Цитата:
Сообщение от [Ссылки могут видеть только зарегистрированные пользователи. ]Посмотреть сообщение
wz:=Integer(z);
где я допустил ошибку

Почему integer?
Z: single?
ReadProcessMemory (hProcess, Pointer(z2+$40), @z, 4, NoB); здесь почему 4?
Надо читать все что есть, а не 4.
вот рабочий код, только что проверил
Код:
 

var 
    WHP, NoB:NativeUint;(у меня ХЕ 10, если делфи 7 то dword)
    z: Single;

  ReadProcessMemory(hProcess, pointer($D6F0AC), @WHP, SizeOf(WHP), NoB);
  ReadProcessMemory(hProcess, pointer(WHP+$1C), @WHP, SizeOf(WHP), NoB);
  ReadProcessMemory(hProcess, pointer(WHP+$28), @WHP, SizeOf(WHP), NoB);
  ReadProcessMemory(hProcess, pointer(WHP+$40), @Z, SizeOf(Z), NoB);
  label4.Caption := FloatToStr(Z/10);

Последний раз редактировалось diagnost; 24.01.2016 в 10:51.
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] Смещение для HP цели Vanko Общение и обсуждение Perfect World 8 30.07.2010 18:24

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 11:31.

Пишите нам: forum@zhyk.ru
Copyright © 2025 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net