Да заране хотел вам сказать про тупым причинам форума, количество скринов превышает моих, так как ограничение стоит. Но не волнуйтесь ссылки лежат в монуале....
После прочтения этого гайда вы поймете, что такое пакетный уровень и научитесь правильно пользоваться программой L2PHX, скажу сразу, гайд написан под версию 3.2.0 ... скачать можно тут
Введение.
Несколько вступительных слов, скажу вам, уважаемые новички, что пакеты - это не какие-либо читы и хаки, это средство обмена информацией между клиентом и сервером, само собой они зашифрованы, в программе l2phx они представлены в более понятном виде и зашифрованы лишь хексом. Надеюсь вы поняли смысл сказанного, что ж, будем изучать программу постепенно.
Первый запуск и знакомство с l2phx.
1. Запустите программу.
2. Запустите клиент.
3. Введите логин, пароль, выберите сервер, чара и войдите в мир.
теперь развернем l2phx и увидим вот такое окно:
Немного о стоящих у меня галочках:
-Перехват \ искать клиент. - думаю здесь все понятно.
-Пропускать логин - программа начинает работать после соединения с Game - Сервером.
-Обход смены XOR ключа - ставьте опционально, если без не заходит, значит скорее всего XOR изменен.
Обо всем остальном рассказано на скрин шоте, но все же для особо умных я поясню что там к чему:
*Левая часть - список пропатченных клиентов.
*Правая часть - настройки программы.
*Верхняя левая часть - выбор активного соединения(чара).
*Верхняя средняя часть - логи работы программы.
*Верхняя правая часть - кошельки для пожертвований создателю программы.
Просмотр пакетов. Фильтры.
Переходим на следующую вкладку программы - "Просмотр" и видим кучу бегающих строчек, если стоит галочка "Запоминать пакеты", взгляните на скриншот, чтобы быть в курсе ситуации.
На моем скрин шоте почти все описано, добавлю только:
*Пакеты от клиента - показывать пакеты отловленные при передаче с клиента на сервер.
*Пакеты от сервера - показывать пакеты, отловленные при передаче с сервера на клиент.
*Прокручивать - всегда показывать последний пакет, автоматическая прокрутка скролла.
*Под галочками еще несколько элементарных действий с пакетами, думаю сами разберетесь(такие как сохранить, открыть).
Теперь я научу вас фильтровать ненужные пакеты, с начало смотрим мой скрин шот:
Снимаем галочки с тех пакетов, которые не должны отображаться в программе, например я бы советовал снять галочку с пакета "MoveToLocation" практически ненужный, но сильно захломляющий программу пакет.
*Выделить все - как вы догадались выделяет все пакеты(делает все доступными).
*Инвертация - Снимает галочки с тех пакетов, где они есть и наоборот.
Пришло время опробовать на деле то, что мы уже знаем и узнать еще кое-что полезное.
Кодирование пакетов и их посылка. Практическая часть.
Ну чтож, перейдем к практике, подразумевается, что вы уже в игре с запущенной программой.
Переходим во вкладку "Просмотр" оставляем или ставим галочки только на "Пакет от клиента" , "Прокручивать" , "Запоминать пакеты" - их значение уже рассматривалось выше.
Теперь идем к продавцу оружия в Weapon And Armor Shop и покупаем любую пуху, я купил Short Sword, теперь разворачиваем l2phx и снимаем галочку с "Запоминать пакеты", видим примерно такую картину:
Возможно у вас возникнет вопрос, что же с ним делать, я предлагаю заменить его ID и купить более крутую вещь за его цену, как видим из скрина ID этого пакета выделенно зеленым.
Теперь переходим на вкладку "Посылка" и копируем туда весь пакет, но тут возникает вопрос, как же заменить ID , а точнее как его перекодировать в Hex?! Все просто, оставляем пакет в посылке и переходим во вкладку "Дополнительно", допустим мы хотим заменить ID предмета на Katana*Tsurugi - Для начала узнаем ID этих дуалов ( у нас в разделе Создание сервера есть несколько тем, посвященных ID ). Находим ID Katana*Tsurugi , он равен 2589, Теперь смотрим скрин:
На "Выполнение скриптов" не обращаем внимания, я просто так подписал, для общего сведения.
Смотрим на подраздел "Преобразования" , для того , чтобы перевести ID в хекс лучше всего использовать переводчик DWord, а чтобы перевести строчное значение (String) используйте String или WideString.
Итак мы перевели наш ID 2589 => 1D 0A 00 00
Возвращаемся на вкладку "Посылка" и подставляем туда наш ID, выглядеть это будет примерно так:
ссылка на картинку: http://s47.radikal.ru/i116/0903/5c/456707e0371f.jpg
Теперь , удостоверившись, что стоим у шопа, посылаем пакет на сервер. Если вы играете на дырявом сервере, то у вас безусловно получится этот трюк, но скорее всего вас просто выкинет, тогда попробуйте проделать это с примеркой, если и там туго , то включите мозг, я же ознакомляю вас с программой, а не даю открытые уязвимости.
Скрипты.
На вкладке скрипты вы можете активировать скрипты написанные вами и другими людьми, скрипты не дают сильного преимущества над пакетами в действии, однако скрипты способны сделать за долю секунды то, что человек делает часами, поэтому это отнюдь не бесполезная вещь.
Для начала смотрим скриншот:
ссылка на скрин: http://i019.radikal.ru/0903/d0/41deb66bc189.jpg
Теперь , если вас интересуют готовые скрипт или синтаксис ищите у нас на форуме это все лежит в важных темах, теперь я просто покажу тем, кто не верит, что скрипты полезны пример отключения L2phx от клиента(фактически создание своего бота)
ПС Функция доступна с 3.2.0 версии , непосредственно скрипт:
var
NetPing: string;
LogOutOk: boolean;
begin
if (ConnectName='ВАШ НИК') and FromServer then begin
case pck[1] of
#$D3: begin
if LogOutOk then begin
buf:=NetPing;
SendToServerEx('ВАШ НИК');
end;
end;
end;
end;
//****************************************************
if (ConnectName='ВАШ НИК') and FromClient then begin
case pck[1] of
#$09: begin
NoFreeOnClientDisconnect;
NoFreeOnServerDisconnect;
pck:='';
buf:=#$7E;
SendToClientEx('ВАШ НИК');
LogOutOk:=true;
end;
#$A8: begin
NetPing:=pck;
pck:='';
end;
end;
end;
Вместо "ВАШ НИК" подставить ник отключаемого чара, скрипт работает так:
Ставите на нем галочку и выходить из игры, сработал скрипт или нет станет ясно из лога программы..
Ответы на часто задаваемые вопросы.
Q: Почему я не вижу пакета "RequestBuyItem"?
A: У вас скорее всего стоит галочка "Пакеты от сервера", снимите ее и поставьте галочку "Пакеты от клиента" и попробуйте снова.
Q: Как и когда правильно отправлять измененный пакет"RequestBuyItem".
A: Подойдите к продавцу, в игре больше ничего делать не нужно, после отправьте пакет, тыкать в игре ничего не надо(!!!).
Помог ? Нажмите кнопочку спасибо!!!!!!!!!!