Вернуться   CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг
Войти через OpenID

Скриптинг Форум посвещенный созданию скриптов для L2PacketHack

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 26.11.2008, 23:11   #1
Пользователь
 
Аватар для metalFan
 
Регистрация: 26.10.2007
Сообщений: 43
Сказал Спасибо: 8
Имеет 21 спасибок в 8 сообщенях
metalFan
По умолчанию проблема скрипта в HexToString

delphi Код:
//Ищет ПК в округе //Пишем в чате: "\start" - работают обе выборки (таргет пк, сообщение в чат) //Пишем "/stop" - стоп работы таргета (мессаг не выключается) // Авторы: Furious, metalFan // Версия: Gracia 1.0b var ObjectID, KarmaPK, TargetPK, MessagePK, i: Integer; NamePK, CvarPK, x: String; Const UserName=('sehseh'); procedure Free; begin end; procedure OnConnect(WithClient: Boolean); begin end; procedure OnDisonnect(WithClient: Boolean); begin end; //(c) xkor function StringToHex(packet: string):string; var   i:integer;   tmp:byte;   function ByteToHex(b: byte): Char;   begin     if b<10 then result:=chr(b+$30)       else result:=chr(b+$37);   end; begin   result:='';   for i:=1 to length(packet) do begin     tmp:=ord(packet[i]) div 16;     result:=result+ByteToHex(tmp);     tmp:=ord(packet[i]) - tmp*16;     result:=result+ByteToHex(tmp)+' ';   end; end;   procedure Init; begin MessagePK:=1 end; procedure MessageSend(Msg:string);   begin     buf:=#$4A;     WriteD(0);     WriteD(10);     WriteS('');     WriteS(Msg);     SendToClientEx(UserName);   end; procedure TargetingPK(ObjectID: Integer);   begin     buf:=#$1F;     WriteD(ObjectID); WriteD(0); Writed(0); Writed(0); WriteC(0);     SendToServerEx(UserName);   end; begin   if (FromServer) and (ConnectName=UserName) and (pck[1]=#$31) then     begin     i:=22;       ObjectID:=ReadD(18);       NamePK:=ReadS(i);       KarmaPK:=ReadD(i+176);       x:=StringToHex(ReadS(i+176));             if (KarmaPK>0) then         begin           if MessagePK=1 then begin MessageSend('>'+NamePK+) end;           if TargetPK=1 then TargetingPK(ObjectID);         end;       end;   if (FromClient) and (ConnectName=UserName) and (pck[1]=#$49) then     begin       CvarPK:=ReadS(2);       case CvarPK of         '\start':           begin             TargetPK:=1;             MessageSend('Search On!');             pck:='';           end;         '\stop':           begin             TargetPK:=0;             MessageSend('Stopped all services!');             pck:='';             end;       end;     end; end.
у меня есть скрипт, но в строке
if MessagePK=1 then begin MessageSend('>'+NamePK+) end;
я хочу вывести хексы с количеством кармы, профой, другими статами...
уже все перепробывал, может я что пропустил... может выход прост...
скрипт работает, но что нужно вставить чтобы мона было значения хекса вывести?
и че в синтаксисе не так, пиет лист аут оф баундс 5
мб надо перекомпилить пакетхак? нежелательно...

Последний раз редактировалось metalFan, 26.11.2008 в 23:46.
metalFan вне форума   Ответить с цитированием
Старый 27.11.2008, 13:12   #2
Рыцарь
 
Аватар для QaK
 
Регистрация: 28.09.2007
Сообщений: 1,558
Сказал Спасибо: 71
Имеет 351 спасибок в 244 сообщенях
QaK пока неопределено
По умолчанию

Цитата:
Сообщение от metalFan Посмотреть сообщение
лист аут оф баундс
эт значит где-то вылетел за пределы пакета, скорее всего. Попробуй посчитать вместе со скриптом, мож где есть ошибка.
QaK вне форума   Ответить с цитированием
Старый 27.11.2008, 15:58   #3
Местный
 
Аватар для PanAm
 
Регистрация: 18.01.2008
Сообщений: 286
Сказал Спасибо: 24
Имеет 133 спасибок в 80 сообщенях
PanAm
По умолчанию

МБ
delphi Код:
KarmaPK:=ReadD(i+60);
?

уже писал, что в ПХ надо в просмотре пакетов сделать смещение в десятичной системе....

Добавлено через 6 минут
delphi Код:
x:=StringToHex(ReadS(i+176));
а смысл этого вообще не понял...

Последний раз редактировалось PanAm, 27.11.2008 в 15:58. Причина: Добавлено сообщение
PanAm вне форума   Ответить с цитированием
Старый 27.11.2008, 16:01   #4
Пользователь
 
Аватар для metalFan
 
Регистрация: 26.10.2007
Сообщений: 43
Сказал Спасибо: 8
Имеет 21 спасибок в 8 сообщенях
metalFan
По умолчанию

да это я просто уже незнаю что сделать... как мне вывести в сообщении величину выраженную хексом вордом или байтом?
я хочу вывести число в чат просто, объясните
metalFan вне форума   Ответить с цитированием
Старый 27.11.2008, 16:25   #5
Местный
 
Аватар для PanAm
 
Регистрация: 18.01.2008
Сообщений: 286
Сказал Спасибо: 24
Имеет 133 спасибок в 80 сообщенях
PanAm
По умолчанию

читать fs.rtf
Цитата:
Преобразование типов
function IntToStr(i: Integer): String
Перевод целого в строку
delphi Код:
MessageSend('>'+NamePK+' '+IntToStr(KarmaPK))
вроде так

Добавлено через 20 минут
Профы я так вывожу
1. создал файл ClassName.ini Под C4
Оффтоп
название проф тут полное, лучше сократить до 2-4 символов на свой вкус
2. добавил глобальную переменную - ClassName: TStringList
3. и Init и Free - соответственно добавить
delphi Код:
ClassName :=TStringList.Create;   ClassName.LoadFromFile('ClassName.ini');
delphi Код:
ClassName.free;
4. видираю из CharInfo профу, и вывожу
delphi Код:
function GetClassName(CID : integer) : string; begin   result :=ClassName.Strings[CID]; end; MessageSend(GetClassName(ClassID))

Последний раз редактировалось PanAm, 27.11.2008 в 16:39. Причина: Добавлено сообщение
PanAm вне форума   Ответить с цитированием
За это сообщение PanAm нажился спасибкой от:
Старый 30.11.2008, 16:55   #6
Пользователь
 
Аватар для metalFan
 
Регистрация: 26.10.2007
Сообщений: 43
Сказал Спасибо: 8
Имеет 21 спасибок в 8 сообщенях
metalFan
По умолчанию

спасибо помогло ) inttostr
metalFan вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг



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

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


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

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!