L2PacketHackФорум программы L2PacketHack, всё что с ней связано находится тут.
Правила раздела!
Категорически запрещено:
* Просить пакеты/скрипты на шмот/адену/другие вещи;
* Просить (помочь) взломать/сломать сервак/аккаунт или раздеть/наказать кого-то на любом серваке;
* Просить научить работать с программой, если не понимаете элементарных вещей в отношениях клиент-сервер (так как, если вы их понимаете, то вопросов по основным возможностям программы быть недолжно);
* Все посты не удовлетворяющие этим запретам, а так же не относящиеся к теме будут удаляться при первой возможности.
* Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы.
* Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.
* Данные запреты неподлежат обсуждению.
дык надо и пакет о сдаче манора сохранять в разные переменные )
вобщем вот мои исправления скрипта чтоб здавать могло до 11 клиентов одновременно:
delphi Код:
//by VORON//СКРИПТ АВТОМАТИЧЕСКОЙ СДАЧИ МАНОРА//использование: скрипт запускается за несколько минут до объявления об олимпиаде//при получении системного сообщения об ее начале засекается системное время и вычисляется время//сдачи манора, также активируется таймер с интервалом ХХХ МС для контроля системного времени.//после этого пытаемся сдать свои всходы- вручную. при этом мы получим ошибку что-//манор система: выключена в данный момент. но при етом пакет на сдачу манора- скрипт запомнит в//память для дальнейшего использования. через заданное время скрипт отправит 10 раз запомненный//пакет с интервалом 0,3сек.//проверено что: если манор сдастся примерно на 4-й раз (4-й повтор пакета) то остальные 6 повторов//сервер принимает без ошибок, хотя в инвенторе отсутствуют нужные всходы- сервер на это не ругается//const// Name='GManor'; //ник персаvar
PaketManora: array[0..10] ofstring; //Пакет на сдачу манора, который мы отправим серваку зараннее с помощью клиента// и запомним его для того чтобы вручную не формировать его кодом.//важно что оправлять его нужно после после объявления об олимпиаде.//так как в пакете манора используются ИД сессии, которые изменяются//каждый ровный час.
timer1: TTimer; //таймер контролирующий системное время
StartTime: array[0..10] ofTDateTime;
EndTime: array[0..10] ofTDateTime;
x: array[0..10] ofinteger;
procedure Init; //Вызывается при включении скриптаbegin
timer1:=TTimer.Create(nil);
timer1.OnTimer:=@OnTimer; //
timer1.enabled:=false; // таймер по умолчанию выключен
timer1.interval:=400; // через каждые 0,4сек будем засекать контрольное время сдачи манора
x[ConnectID]:=0;
end;
procedure Free; //Вызывается при выключении скриптаbegin
timer1.Free; //освобождаем занимаемую память таймеромend;
//вызывается при срабатывании таймераprocedure OnTimer(Sender: TObject);
begin//если наступило время сдавать манор и скрипт пока еще не отправил 30 попыток его сдать тоif(time >= EndTime[ConnectID])and(x[ConnectID]<30)thenbegin//пишем сами себе в чат - что "ПОПЫТКА"
buf:=hstr('4A AB F6 A0 48 02 00 00 00 2D 00 3E 00 56 00 4F 00 52 00 4F 00 4E 00 37 00 00 00 3F 04 3E 04 3F 04 4B 04 42 04 3A 04 30 04 20 00 41 04 34 04 30 04 42 04 4C 04 00 00');
SendToClient;
// отправляем пакет на сдачу манора.
buf:=PaketManora[ConnectID];
SendToServer;
//счетчик попыток
x[ConnectID]:=x[ConnectID]+1;
end;
end;
begin//если перехвачен пакет на сдачу манора тоif FromClient and{(ConnectName=Name) and}(pck[1]=#$D0)and(pck[2]=#$09)and(pck[3]=#$00)thenbegin//запоминаем его полностью
PaketManora[ConnectID]:=pck;
end;
//если получен пакет об начале олимпиады тоif FromServer and{(ConnectName=Name) and}(pck[1]=#$64)and(pck[2]=#$69)and(pck[3]=#$06)thenbegin//засекаем текущее время
StartTime[ConnectID]:=time;
//вычисляем время сдачи манора (прибавляем нужное время которое нужно засеч после получения сообщения об илимпиаде)
EndTime[ConnectID]:=StartTime[ConnectID] + EncodeTime(0,5,49,0); // изменяем и корректируем ето число в формате (ЧЧ,ММ,СС,МС)//активируем таймер
timer1.enabled:=true;
//а ето- отправка сам себе сообщения о том что ВРЕМЯ ПОШЛО
buf:=hstr('4A AB F6 A0 48 02 00 00 00 2D 00 3E 00 56 00 4F 00 52 00 4F 00 4E 00 37 00 00 00 32 04 40 04 35 04 3C 04 4F 04 20 00 3F 04 3E 04 48 04 3B 04 3E 04 00 00');
SendToClient;
end;
end.
тока я его не проверял, могут быть небольшие ляпы
Цитата:
Сообщение от xkor
дык надо и пакет о сдаче манора сохранять в разные переменные )
вобщем вот мои исправления скрипта чтоб здавать могло до 11 клиентов одновременно:
delphi Код:
//by VORON
//СКРИПТ АВТОМАТИЧЕСКОЙ СДАЧИ МАНОРА
//использование: скрипт запускается за несколько минут до объявления об олимпиаде
//при получении системного сообщения об ее начале засекается системное время и вычисляется время
//сдачи манора, также активируется таймер с интервалом ХХХ МС для контроля системного времени.
//после этого пытаемся сдать свои всходы- вручную. при этом мы получим ошибку что-
//манор система: выключена в данный момент. но при етом пакет на сдачу манора- скрипт запомнит в
//память для дальнейшего использования. через заданное время скрипт отправит 10 раз запомненный
//пакет с интервалом 0,3сек.
//проверено что: если манор сдастся примерно на 4-й раз (4-й повтор пакета) то остальные 6 повторов
//сервер принимает без ошибок, хотя в инвенторе отсутствуют нужные всходы- сервер на это не ругается
//const
// Name='GManor'; //ник перса
var
PaketManora: array[0..10] of string; //Пакет на сдачу манора, который мы отправим серваку зараннее с помощью клиента
// и запомним его для того чтобы вручную не формировать его кодом.
//важно что оправлять его нужно после после объявления об олимпиаде.
//так как в пакете манора используются ИД сессии, которые изменяются
//каждый ровный час.
timer1: TTimer; //таймер контролирующий системное время
StartTime: array[0..10] of TDateTime;
EndTime: array[0..10] of TDateTime;
x: array[0..10] of integer;
procedure Init; //Вызывается при включении скрипта
begin
timer1:=TTimer.Create(nil);
timer1.OnTimer:=@OnTimer; //
timer1.enabled:=false; // таймер по умолчанию выключен
timer1.interval:=400; // через каждые 0,4сек будем засекать контрольное время сдачи манора
x[ConnectID]:=0;
end;
procedure Free; //Вызывается при выключении скрипта
begin
timer1.Free; //освобождаем занимаемую память таймером
end;
//вызывается при срабатывании таймера
procedure OnTimer(Sender: TObject);
begin
//если наступило время сдавать манор и скрипт пока еще не отправил 30 попыток его сдать то
if (time >= EndTime[ConnectID]) and (x[ConnectID]<30) then
begin
//пишем сами себе в чат - что "ПОПЫТКА"
buf:=hstr('4A AB F6 A0 48 02 00 00 00 2D 00 3E 00 56 00 4F 00 52 00 4F 00 4E 00 37 00 00 00 3F 04 3E 04 3F 04 4B 04 42 04 3A 04 30 04 20 00 41 04 34 04 30 04 42 04 4C 04 00 00');
SendToClient;
// отправляем пакет на сдачу манора.
buf:=PaketManora[ConnectID];
SendToServer;
//счетчик попыток
x[ConnectID]:=x[ConnectID]+1;
end;
end;
begin
//если перехвачен пакет на сдачу манора то
if FromClient and {(ConnectName=Name) and} (pck[1]=#$D0) and (pck[2]=#$09) and (pck[3]=#$00) then
begin
//запоминаем его полностью
PaketManora[ConnectID]:=pck;
end;
//если получен пакет об начале олимпиады то
if FromServer and {(ConnectName=Name) and} (pck[1]=#$64) and (pck[2]=#$69) and (pck[3]=#$06) then
begin
//засекаем текущее время
StartTime[ConnectID]:=time;
//вычисляем время сдачи манора (прибавляем нужное время которое нужно засеч после получения сообщения об илимпиаде)
EndTime[ConnectID]:=StartTime[ConnectID] + EncodeTime(0,5,49,0); // изменяем и корректируем ето число в формате (ЧЧ,ММ,СС,МС)
//активируем таймер
timer1.enabled:=true;
//а ето- отправка сам себе сообщения о том что ВРЕМЯ ПОШЛО
buf:=hstr('4A AB F6 A0 48 02 00 00 00 2D 00 3E 00 56 00 4F 00 52 00 4F 00 4E 00 37 00 00 00 32 04 40 04 35 04 3C 04 4F 04 20 00 3F 04 3E 04 48 04 3B 04 3E 04 00 00');
SendToClient;
end;
end.тока я его не проверял, могут быть небольшие ляпы
Здравствуйте
Я так понял что этот скрипт запоминает и отправляет несколько пакетов серверу на сдачу манора?
И его можно использовать при сдаче манора одним пером в разные города?
Если я не прав поправте пожалуйста и обьясните как это можно реализовать.
ага спасибо за разьяснение по теме, а про то что добавил работы по уборке админу форума и сам вижу - прошу прощения накопировал всяко разно, уже исправился
дык надо и пакет о сдаче манора сохранять в разные переменные )
вобщем вот мои исправления скрипта чтоб здавать могло до 11 клиентов одновременно:
delphi Код:
//by VORON//СКРИПТ АВТОМАТИЧЕСКОЙ СДАЧИ МАНОРА//использование: скрипт запускается за несколько минут до объявления об олимпиаде//при получении системного сообщения об ее начале засекается системное время и вычисляется время//сдачи манора, также активируется таймер с интервалом ХХХ МС для контроля системного времени.//после этого пытаемся сдать свои всходы- вручную. при этом мы получим ошибку что-//манор система: выключена в данный момент. но при етом пакет на сдачу манора- скрипт запомнит в//память для дальнейшего использования. через заданное время скрипт отправит 10 раз запомненный//пакет с интервалом 0,3сек.//проверено что: если манор сдастся примерно на 4-й раз (4-й повтор пакета) то остальные 6 повторов//сервер принимает без ошибок, хотя в инвенторе отсутствуют нужные всходы- сервер на это не ругается//const// Name='GManor'; //ник персаvar
PaketManora: array[0..10] ofstring; //Пакет на сдачу манора, который мы отправим серваку зараннее с помощью клиента// и запомним его для того чтобы вручную не формировать его кодом.//важно что оправлять его нужно после после объявления об олимпиаде.//так как в пакете манора используются ИД сессии, которые изменяются//каждый ровный час.
timer1: TTimer; //таймер контролирующий системное время
StartTime: array[0..10] ofTDateTime;
EndTime: array[0..10] ofTDateTime;
x: array[0..10] ofinteger;
procedure Init; //Вызывается при включении скриптаbegin
timer1:=TTimer.Create(nil);
timer1.OnTimer:=@OnTimer; //
timer1.enabled:=false; // таймер по умолчанию выключен
timer1.interval:=400; // через каждые 0,4сек будем засекать контрольное время сдачи манора
x[ConnectID]:=0;
end;
procedure Free; //Вызывается при выключении скриптаbegin
timer1.Free; //освобождаем занимаемую память таймеромend;
//вызывается при срабатывании таймераprocedure OnTimer(Sender: TObject);
begin//если наступило время сдавать манор и скрипт пока еще не отправил 30 попыток его сдать тоif(time >= EndTime[ConnectID])and(x[ConnectID]<30)thenbegin//пишем сами себе в чат - что "ПОПЫТКА"
buf:=hstr('4A AB F6 A0 48 02 00 00 00 2D 00 3E 00 56 00 4F 00 52 00 4F 00 4E 00 37 00 00 00 3F 04 3E 04 3F 04 4B 04 42 04 3A 04 30 04 20 00 41 04 34 04 30 04 42 04 4C 04 00 00');
SendToClient;
// отправляем пакет на сдачу манора.
buf:=PaketManora[ConnectID];
SendToServer;
//счетчик попыток
x[ConnectID]:=x[ConnectID]+1;
end;
end;
begin//если перехвачен пакет на сдачу манора тоif FromClient and{(ConnectName=Name) and}(pck[1]=#$D0)and(pck[2]=#$09)and(pck[3]=#$00)thenbegin//запоминаем его полностью
PaketManora[ConnectID]:=pck;
end;
//если получен пакет об начале олимпиады тоif FromServer and{(ConnectName=Name) and}(pck[1]=#$64)and(pck[2]=#$69)and(pck[3]=#$06)thenbegin//засекаем текущее время
StartTime[ConnectID]:=time;
//вычисляем время сдачи манора (прибавляем нужное время которое нужно засеч после получения сообщения об илимпиаде)
EndTime[ConnectID]:=StartTime[ConnectID] + EncodeTime(0,5,49,0); // изменяем и корректируем ето число в формате (ЧЧ,ММ,СС,МС)//активируем таймер
timer1.enabled:=true;
//а ето- отправка сам себе сообщения о том что ВРЕМЯ ПОШЛО
buf:=hstr('4A AB F6 A0 48 02 00 00 00 2D 00 3E 00 56 00 4F 00 52 00 4F 00 4E 00 37 00 00 00 32 04 40 04 35 04 3C 04 4F 04 20 00 3F 04 3E 04 48 04 3B 04 3E 04 00 00');
SendToClient;
end;
end.
тока я его не проверял, могут быть небольшие ляпы
xkor, за скрипт спасибо! и поправь если я не прав: сей скрипт уже править не надо? просто добавляю его, включаю и он мне на несколько окон в разные города менят одни и теже семена?
Добавлено через 5 минут
кстате, у кого-нибудь есть соображения как можно подгадать пинг и быть первым в сдаче манора? или может есть какие то другие способы? просто я когда нашел скрипт Ворона на манор он у меня первый и последний раз поменял семена! после этого я сдавал раз 5 и ниразу не успевал((! если не трудно помогите!
__________________
no comments!!!
Последний раз редактировалось Opus, 19.01.2009 в 10:42.
Причина: Добавлено сообщение
никак ... только если прийти к одминам, и запустить прогу на самом серваке =) тогда точно первый будешь
Еслиб я мог прийти к админам и что-то запустить на серваке мне бы и пакет хак нафиг не нужен был бы) и манор тоже был не актуален))
Добавлено через 43 секунды
Все зависит от того, как попрет, и только от этого, ибо скрипт ВОРОНа лежит уже давно, его уже все, кто хотел - нашли.
да но есть же счастливчики которы прет) а вообще где-то тут чувак писал что про время пока пакет дойдет до серва пока придет обратно с ответом, я думаю моно попробовать выгадать, перед тем как включать скрипт пропинговать высчитать и поставить время начало обмена в скрипте более точно ток для этого надо знать во сколько точно система дает обменять семена! думаю должно получиться! правда не с 100% шансом(( как считаешь?
Добавлено через 2 минуты
ах да скрипт переделаный xkor-ом ктонить проверял?))
__________________
no comments!!!
Последний раз редактировалось Opus, 19.01.2009 в 16:15.
Причина: Добавлено сообщение
да но есть же счастливчики которы прет) а вообще где-то тут чувак писал что про время пока пакет дойдет до серва пока придет обратно с ответом, я думаю моно попробовать выгадать, перед тем как включать скрипт пропинговать высчитать и поставить время начало обмена в скрипте более точно ток для этого надо знать во сколько точно система дает обменять семена! думаю должно получиться! правда не с 100% шансом(( как считаешь?
Добавлено через 2 минуты
ах да скрипт переделаный xkor-ом ктонить проверял?))
шанс останется тем же пынг миняется от нагрузки на канал иногда сдается все когда он в районе 100, а все почему потому что серв лаганул и подрят высланые тобой пакеты обработал подряд, а не в перемешку с чужими. другими словами рандом
И все же мне интерестно: проверял ли кто-нибудь скрипт переделаный xkor-ом на сдачу манора 11-ю окнами?))) скоро наверное тоже се этот вопрос в коментарии добавлю!))
Уважаемый NLObP, если есть время помоги проверить скрипт на манор для нескольких окон, происходит сдача манора сразу по приходу пакета о начале олимпа.
const
Name='NICK'; //ник перса
.....
//если перехвачен пакет на сдачу манора то
if FromClient and (ConnectName=Name) and (pck[1]=#$D0) and (pck[2]=#$09) and (pck[3]=#$00) then
begin
//запоминаем его полностью
PaketManora[ConnectID]:=pck;
end;
//если получен пакет об начале олимпиады то
if FromServer and (ConnectName=Name) and (pck[1]=#$64) and (pck[2]=#$69) and (pck[3]=#$06) then
begin
//засекаем текущее время
StartTime[ConnectID]:=time;
//вычисляем время сдачи манора (прибавляем нужное время которое нужно засеч после получения сообщения об илимпиаде)
EndTime[ConnectID]:=StartTime[ConnectID] + EncodeTime(0,5,49,0); // изменяем и корректируем ето число в формате (ЧЧ,ММ,СС,МС)
//активируем таймер
timer1.enabled:=true;
//а ето- отправка сам себе сообщения о том что ВРЕМЯ ПОШЛО
buf:=hstr('4A AB F6 A0 48 02 00 00 00 2D 00 3E 00 56 00 4F 00 52 00 4F 00 4E 00 37 00 00 00 32 04 40 04 35 04 3C 04 4F 04 20 00 3F 04 3E 04 48 04 3B 04 3E 04 00 00');
SendToClientEx(Name);
end;