Просмотр полной версии : пакет в котором есть информация о ХП выделенного игрока
подскажите пожалуйста пакет в котором есть информация о ХП выделенного игрока, не юзера  те себя  а другого игрока
если такого нет
то каким образом показывают ХП программы типа L2Control
сервер С4, говорят что начиная с Т0 инфу о ХП сервер не отсылает..
как это можно реализовать посредством скрипта
StatusUpdate пакет, его ID не помню...
эм, в пакете:
0E=StatusUpdate:h(ObjectID)d(Attributes)
(h ObjectID: 0x4FD0878F
d Attributes: 2)
где есть инфа о ХП:confused:
опишите пожалуйста пакет
в какой строке ХП
у меня приходит пакет:
0E 7B 53 10 48 02 00 00 00 0A 00 00 00 4D 12 00 00 09 00 00 00 4D 12 00 00
metalFan
29.07.2008, 20:37
сервер не посылает инфу о хп противника никаким образом
сервер не посылает инфу о хп противника никаким образом
но что-то всетаки есть
раз l2control видит ХП таргета
и сервер С4  не Т0, а как до этого слышал что начиная с Т0 сервер перестал отсылать инфу о ХП противника
Добавлено через 6 минут
м  длина у пактеа разная
есть и
0E 7C 54 20 48 04 00 00 00 09 00 00 00 80 0B 00 00 0A 00 00 00 80 0B 00 00 21 00 00 00 C0 05 00 00 22 00 00 00 C0 05 00 00
metalFan
29.07.2008, 21:24
оесть у тебя старая сборка ц4 на сервере? не могу ничем помочь:search:
Можно взять в пакете
s0E=StatusUpdate:h(psize)c(ID)d(ObjectID)d(AttribC ount:For.0002)d(AttrID:Get.FSup)d(AttrValue)
Расшифровка AttrValue
function GetFSup(ar1 : integer) : string;
// внешняя ф-ция, вызывается не из скрипта, а по аргументу
// :Get.FSup - Status Update ID
begin
  case ar1 of
    01: result := 'Level';      02: result := 'EXP';         03: result := 'STR';
    04: result := 'DEX';        05: result := 'CON';         06: result := 'INT';
    07: result := 'WIT';        08: result := 'MEN';         09: result := 'cur_HP';
    $0A: result := 'max_HP';   $0B: result := 'cur_MP';     $0C: result := 'max_MP';
    $0D: result := 'SP';       $0E: result := 'cur_Load';   $0F: result := 'max_Load';
    $11: result := 'P_ATK';    $12: result := 'ATK_SPD';    $13: result := 'P_DEF';
    $14: result := 'Evasion';  $15: result := 'Accuracy';   $16: result := 'Critical'
    $17: result := 'M_ATK';    $18: result := 'CAST_SPD';   $19: result := 'M_DEF';
    $1A: result := 'PVP_FLAG'; $1B: result := 'KARMA';      $21: result := 'cur_CP';
    $22: result := 'max_CP';
    else result := '?'
  end;
  result := #2+result+#15;
end;;
ps: взято из wpp Sauron'а
спасибо большое
Добавлено через 11 минут
чета всеранво не пойму как узнать ХП
и выводилось к примеру в
procedure SendMsg(msg:string);
begin
  buf:=#$4A;
  WriteD(0);
  WriteD(10);
  WriteS('');
  WriteS(msg);
  SendToClient;
end;
те через этот пакет можно узнать и левел и ЦП..
как сделать что писался левел хп и цп в SendMsg:confused:
спасибо большое
Добавлено через 11 минут
чета всеранво не пойму как узнать ХП
и выводилось к примеру в
procedure SendMsg(msg:string);
begin
  buf:=#$4A;
  WriteD(0);
  WriteD(10);
  WriteS('');
  WriteS(msg);
  SendToClient;
end;
те через этот пакет можно узнать и левел и ЦП..
как сделать что писался левел хп и цп в SendMsg:confused:
Из пакета StatusUpdate это можно узнать, при условии, что эти параметры изменяются, например ты бъешь чара, то в пакете будет приходить изменение HP, CP и возможно MP.
По второму вопросу. Сформируй строковую переменную msg и отсылай её.
допустим эта чась скрипта узнает координаты имя расса пол и тп..
if FromServer and (pck[1]=#$03) then
  begin
   I:=2;
   X:=Readd(i);
   Y:=ReadD(i);
   Z:=ReadD(i);
   I:=22;
   Name:=ReadS(i);
   RaceID:=ReadD(i);
   SexID:=ReadD(i);
   ClassID:=ReadD(i);
..
как подобнам способом узнать хп цп мп
if FromServer and (pck[1]=#$0E) then
  begin
   ..
   .. 
 end;
как подобнам способом узнать хп цп мп
Примерно так. По ObjectID узнавай чьи данные в этом пакете.
procedure TargetStatusUpdate;       //обновление данных о цели
var
  i: integer;
begin
  for i:=0 to ReadD(6)-1 do
    case pck[i*8+10] of
      #$09: AttackerHP:=ReadD(i*8+14);
      #$0A: AttackerMaxHP:=ReadD(i*8+14);
    end;
end;
//************************************************** *************
procedure StatusUpdate;       //обновление данных о себе
var
  i: integer;
begin
  for i:=0 to ReadD(6)-1 do
    case pck[i*8+10] of
      #$09: MyHP:=ReadD(i*8+14);
      #$0A: MyMaxHP:=ReadD(i*8+14);
      #$0B: MyMP:=ReadD(i*8+14);
      #$0C: MyMaxMP:=ReadD(i*8+14);
    end;
  if (MyMaxHP<>0) then        //вычисляем процентное соотношение хп
  begin
    PercentHP:=strtoint(EditHealt.Text);
    NeedBuy:=strtoint(EditLure.Text);
    but:=Round((MyMaxHP/100)*PercentHP); //при каком количестве хп юзать бутылку лечения
  end;
end;
begin
...
      if FromServer and (pck[1]=#$0E) then begin
          //msg.Lines.Add('S>Пакет StatusUpdate #$0E');
          if (MyOID=ReadD(2)) then StatusUpdate; //обновление информации о хп
          if (AttackerOID=ReadD(2)) then TargetStatusUpdate; //обновление информации о хп
      end;
...
end.
NLObP, СР и МР там приходят только для твоего чара.., да и НР цели приходит только при выделении...
ура!
СПАСИБО ОГРОМНОЕ
:yahoo:
еше бы кто помог с http://coderx.ru/showthread.php?t=606
Вот мой скриптик
Только исходник DLL  я где-то потерял, завтра на работе посмотрю :)
тут вроде нехватает только НР сопартийцев...
удобно
посмотри пожалуйста
еше такой бы панелькой узнавать во что одет таргет
metalFan
30.07.2008, 11:51
Rity, есть такая старенькая программа hingame
она показывает мапу хп противника (если оступно на сервере) шмот и п деф:cool:
ингейм очень давно не работает
Вот, версия немного другая, но работать должна...
hingame Неработает? Ну поправь исходники....
metalFan
30.07.2008, 17:16
Rity, на ц4? вроде работал на ц5-6 не пашет 100% :))
hingame Неработает? Ну поправь исходники....
Внимание!!! Антивирусы обнаруживают Троян внутри. NOD32 ругается на Win32/PSW.OnLineGames, Касперский на Trojan-PSW.Win32.Nilage.bzw , Dr.Web на BackDoor.Muma. Во избежание, перекомпилируйте inject.dll и убедитесь что закладок нет.
RoZ, троян в исходнике????, ты сам понял что сказал?
там просто inside.dll уже скомпиленый, его можно удалить и скомпилить самому если пароное...
Там в архиве inside.dll это примерно тоже самое, что и inject.dll в ПХ
Можете проверить исходники и перекомпилить...
А код для С5-С6 там изменить не сложно, хоть хинт и коряво пишет, но разобрать где идет декодирование и инициализация ключа можно.
RoZ, троян в исходнике????, ты сам понял что сказал?
там просто inside.dll уже скомпиленый, его можно удалить и скомпилить самому если пароное...
Я параноик, и решил таки проверить.
http://www.kaspersky.ru/scanforvirusПроверенный файл:   5f8acda5(2).rar  - Инфицирован
5f8acda5(2).rar/inside.dll - инфицирован Trojan-PSW.Win32.Nilage.bzw
http://online.us.drweb.com/5f8acda5(2).rar/inside.dll infected with BackDoor.Muma
Каждый решает сам что с этим делать :) моё дело предупредить. Меня неломает компилить, так надёжнее.
у меня приходит пакет:
0E 7B 53 10 48 02 00 00 00 0A 00 00 00 4D 12 00 00 09 00 00 00 4D 12 00 00
cmd:   0E
ObjId: 7B 53 10 48
count:02 00 00 00 
UpdId:0A 00 00 00 (MAX_HP)
Val:   4D 12 00 00 
UpdId:09 00 00 00 (CUR_HP)
Val:4D 12 00 00
пакет приходит только для себя и членов пати
пакет приходит только для себя и членов патине-не, для всех во время таргета приходит.
metalFan
31.07.2008, 12:17
QaK, в ц4 или авообще?:(
QaK, в ц4 или авообще?c4 точно, остальное не тестировал.
metalFan
31.07.2008, 12:21
вот вот я уже испугался
с с1, с2, с3, с4, с5, с6 точно приходит)
metalFan
31.07.2008, 23:01
xkor, хп ИГРОКОВ???
пошел проверять:confused::(
гы, во америку открыли :D
metalFan
01.08.2008, 00:42
а цп можно посмотреть? О_О
свое
а у таргетов тока КуррХП и МаксХП
Вот, версия немного другая, но работать должна...
нет, не работает
окношко в ней больше тока заметил  но не рабочее
нет, не работает
окношко в ней больше тока заметил  но не рабочее
Просто версия другая, хотел чтоб еще показывала сопортийцев с их МП и ЦП, просто надо в скрипте все TargetUpdate заменить на TargetHPUpdate.
в какой дельфи открывать?
в 7ой чета не хочет
Professor
03.10.2008, 12:04
Я параноик, и решил таки проверить.
http://www.kaspersky.ru/scanforvirus
http://online.us.drweb.com/
Каждый решает сам что с этим делать :) моё дело предупредить. Меня неломает компилить, так надёжнее.
если не сложно, выложи плиз перекомпиленый тобой вариант l2phx
vBulletin® v3.6.11, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot