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

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

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 18.10.2008, 23:58   #1
Новичок
 
Регистрация: 05.10.2008
Сообщений: 10
Сказал Спасибо: 4
Имеет 1 спасибку в 1 сообщении
creaDo пока неопределено
По умолчанию Отключение клиента

Где-то видел функцию отключение клиента от ПХ без остановки скрипта
при использовании
delphi Код:
procedure Init; begin NoFreeOnClientDisconnect; DisconnectClient; start; end;
Клиент подвисает и чар выходит из игры. хроника - Gracia, нешифрованый трафик.
Неотклюая клиент скрипт работает прекрасно

Кста ето может быть из-за того что я пх собрал по кускам из разных версий?
l2phx 3.3.9, inject.dll 3.3.0 и без newxor.dll работает только так
перепробывал кучу варинтов или неправельно пакеты читает или их неловит или имя неправельно пишет или вообще имя не прописывает
creaDo вне форума   Ответить с цитированием
Старый 11.12.2008, 17:19   #2
Новичок
 
Регистрация: 16.10.2008
Сообщений: 6
Сказал Спасибо: 6
Имеет 0 спасибок в 0 сообщенях
kamil пока неопределено
По умолчанию

подымаю топик вверх. Вопрос интересен. Как отвязать l2pnh от клиента.

Напишите плиз небольшой примерчик чтобы можно было клиента вырубить, а перс все еще был бы на сервере....
kamil вне форума   Ответить с цитированием
Старый 11.12.2008, 18:15   #3
Рыцарь
 
Аватар для QaK
 
Регистрация: 28.09.2007
Сообщений: 1,558
Сказал Спасибо: 71
Имеет 351 спасибок в 244 сообщенях
QaK пока неопределено
По умолчанию

Данный вопрос уже поднимался и рассматривался в топике Пакетхак 3.2.0
QaK вне форума   Ответить с цитированием
Старый 11.12.2008, 18:18   #4
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Цитата:
Сообщение от kamil Посмотреть сообщение
Напишите плиз небольшой примерчик чтобы можно было клиента вырубить, а перс все еще был бы на сервере....
Всё ниже перечисленное проверяем и используем на свой страх и риск!!!
Основные моменты скрипта для С4, С5, Т0:
delphi Код:
//*************************************************************** // вызывается при приходе каждого пакета, если скрипт включен //*************************************************************** begin   //****************************************************************************   //не обрабатываем пустые пакеты   if pck='' then exit;   //****************************************************************************   if (ConnectName=Name) and FromServer then begin     case pck[1] of       #$D3: begin // D3=NetPing:d(kID) на Нетпинг сервера шлем сохранённый пакет Нетпинга от клиента         //msg.Lines.Add('S>Пакет NetPing #$D3');         if LogOutOk then begin           buf:=NetPing;           SendToServerEx(Name);           //msg.Lines.Add('C>Пакет NetPing #$A8');         end;       end;     end;   end;   //****************************************************************************   if (ConnectName=Name) and FromClient then begin     case pck[1] of       #$09: begin //C>09=LogoutRequest - выходим ручками из клиента         //msg.Lines.Add('S>Пакет LogoutRequest #$09');         // вроде не надо тут их ставить?         NoFreeOnClientDisconnect;         NoFreeOnServerDisconnect;         pck:='';         // шлем s7E=LogOutOk, для отключения клиента         msg.Lines.Add('S>Пакет LogOutOk #$7E');         buf:=#$7E;         SendToClientEx(Name);         LogOutOk:=true;       end;       #$A8: begin        // C>A8=NetPing:d(kID)d(PING)d(dta)         //msg.Lines.Add('C>Пакет NetPing #$A8');         NetPing:=pck; // запомним его         pck:='';       end;       #$1B: begin         //msg.Lines.Add('C>Пакет RequestSicialAction #$1B');         case ReadD(2) of           //социальное действие Yes для начала ловли           6: begin             //msg.Lines.Add('Отключили клиент из скрипта...');             //для версии 3.1.9+ можно попробовать отключить клиента             //Варнинг! Опасно для жизни! =)             NoFreeOnClientDisconnect;             NoFreeOnServerDisconnect;             LogOutOk:=true;             buf:=#$7E;             SendToClientEx(Name); // отключаем клиент             //msg.Lines.Add('S>Пакет LogOutOk #$7E');             //не передаем серверу социальное действие             pck:='';           end;         end;       end;     end; //case   end; end.
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
Старый 11.12.2008, 19:57   #5
Пользователь
 
Регистрация: 04.12.2008
Сообщений: 43
Сказал Спасибо: 11
Имеет 29 спасибок в 21 сообщенях
Xelat пока неопределено
По умолчанию

NLObP,
Незнаю как в C4,C5,T0, но в грации (руофф) к примеру ещё идёт запрос GameGuardQuery, на который поидее тоже нужно отвечать. (Естессно если наличествует ГГ)
Xelat вне форума   Ответить с цитированием
За это сообщение Xelat нажился спасибкой от:
Старый 13.12.2008, 07:49   #6
Местный
 
Аватар для PanAm
 
Регистрация: 18.01.2008
Сообщений: 286
Сказал Спасибо: 24
Имеет 133 спасибок в 80 сообщенях
PanAm
По умолчанию

а ПХ работает с ГГ?
PanAm вне форума   Ответить с цитированием
Старый 13.12.2008, 09:51   #7
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Цитата:
Сообщение от PanAm Посмотреть сообщение
а ПХ работает с ГГ?
На руофф работает.
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
Старый 17.12.2008, 10:02   #8
Местный
 
Аватар для PanAm
 
Регистрация: 18.01.2008
Сообщений: 286
Сказал Спасибо: 24
Имеет 133 спасибок в 80 сообщенях
PanAm
По умолчанию

Цитата:
Сообщение от NLObP Посмотреть сообщение
На руофф работает.
дык там вроде ГГ ене работает?
PanAm вне форума   Ответить с цитированием
Старый 07.01.2011, 05:40   #9
Новичок
 
Регистрация: 07.01.2011
Сообщений: 5
Сказал Спасибо: 0
Имеет 1 спасибку в 1 сообщении
__name__ пока неопределено
По умолчанию

имеется скрипт он должен отключать клиент от сервера. по непонятной причине отключает только одно соединение(из чего делаю вывод что скрипт функционирует),а все последующие отключатся отказываются, и клиент находится в игре. поиск ничего толкового не дал может быть плохо ищу.

l2ph v.3.5.33.164
сервер локальная фришка Gracia Epilogue какая либо защита или кодировка отсутсвует.

Delphi Код:
const n = 100; fs_netping = #$D9; fc_EnterWorld = #$11; fc_logout = #$00; fc_netping = #$B1; var   NetPing: string;   LogOutOk: array of boolean;   playid : array of integer;   i,cnt:integer; procedure init; begin   cnt:=0;   NoCloseFrameAfterDisconnect;   NoCloseClientAfterServerDisconnect;   NoCloseServerAfterClientDisconnect; end; procedure onfromserver; begin     case pck[1] of       fs_netping: begin       for i:=0 to cnt do         if (playid[i]=connectid) and (LogOutOk[i]) then begin           buf:=NetPing;           SendToServerEx(connectname);         end;       end;     end; end; procedure onfromclient; begin     case pck[1] of     fc_logout: begin         pck:='';         buf:=#$20;         SendToClientEx(connectname);       for i:=0 to cnt do         if (playid[i]=connectid) then begin           LogOutOk[i]:=true;       end;     end;       fc_netping: begin         NetPing:=pck;         pck:='';       end;      fc_enterworld: begin        playid[cnt]:=connectid;        logoutok[cnt]:=false;        inc(cnt);        if cnt >= 101 then cnt := 0;      end;   end; end; begin if fromServer then   onfromserver else   onfromclient;    end.

прошу помочь.

P.S.: для тех кто не понял суть скрита чтобы отключить более 2 клиентов(соединений).
__name__ вне форума   Ответить с цитированием
Старый 08.01.2011, 23:07   #10
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

как-то так чтоли

delphi Код:
const n = 100; fs_netping = #$D9; fc_EnterWorld = #$11; fc_logout = #$00; fc_netping = #$B1; var   NetPing: string;   LogOutOk: array of boolean;   playid : array of integer;   i,cnt:integer; procedure init; begin   cnt:=0; end; procedure NoClose; begin   NoCloseFrameAfterDisconnect;   NoCloseClientAfterServerDisconnect;   NoCloseServerAfterClientDisconnect; end; procedure onfromserver; begin     case pck[1] of       fs_netping: begin       for i:=0 to cnt do         if (playid[i]=connectid) and (LogOutOk[i]) then begin           buf:=NetPing;           SendToServer;           exit;         end;       end;     end; end; procedure onfromclient; begin     case pck[1] of     fc_logout: begin         pck:='';         buf:=#$20;         SendToClient;       for i:=0 to cnt do         if (playid[i]=connectid) then begin           LogOutOk[i]:=true;           NoClose;           exit;       end;     end;       fc_netping: begin         NetPing:=pck;         pck:='';       end;      fc_enterworld: begin        SetLength(playid,cnt+1)        SetLength(logoutok,cnt+1)        playid[cnt]:=connectid;        logoutok[cnt]:=false;        inc(cnt);        if cnt >= 101 then cnt := 0;      end;   end; end; begin if fromServer then   onfromserver else   onfromclient;    end.

PS на нетпинг надо отвечать нихрена не так
__________________
Начало.

Последний раз редактировалось supernewbie, 08.01.2011 в 23:21.
supernewbie вне форума   Ответить с цитированием
Ответ

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



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

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


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

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

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