ну... в моем случае нет шифрации. клиентом захожу в игру, жму включение скрипта, после выход из игры. персонаж остается и продолжает делать что он там делает... бывает правда вертолетит, и я не вижу точной причины - пока только теория что из-за рассинхронизации клиента и сервера по местоположению персонажа. ведь мой недобот не шлет пока-что валидейтлокейшн. однако если это скажем фарм рб, где персонажи стоят практически не двигаясь и просто лупят по ассисту - то все работает замечательно.
Добавлено через 12 минут
так... еще момент... скрипты растут в ширь все больше и больше. по началу условий было раз два и обчелся, теперь же это уже вагон условий
думаю надо начинать оптимизацию. как, с точки зрения загруженности процессора, правильней подходить к синтаксису этих самых условий?
Код:
//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
begin
//кончились бабки
if FromServer and (ConnectName=Name) and (pck=HStr('64 BD 02 00 00 00 00 00 00'))
then begin
iditem:='0';
a:=1;
b:=0;
Timer01.enabled:=false;
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS('бабло кончилось');
SendToClient;
end;
//блокировка перемещения
if FromClient and (ConnectName=Name) and (pck[1]=HStr('01')) and (start=1) and (Target='0')
then begin
pck:='';
end;
end.
то есть перед каждым условием а "это" ли это соединение? а от сервера ли пришло? или правильней сделать сначала проверку это ли соединение, потом от сервера и внутри уже фигачить прочие условия?
Код:
//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
begin
if (ConnectName=Name) then begin
if FromServer then begin
//кончились бабки
if (pck=HStr('64 BD 02 00 00 00 00 00 00'))
then begin
iditem:='0';
a:=1;
b:=0;
Timer01.enabled:=false;
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS('бабло кончилось');
SendToClient;
end;
//еще стописят других условий
end
else begin //значит фром клиент
//блокировка перемещения
if (pck[1]=HStr('01')) and (start=1) and (Target='0')
then begin
pck:='';
end;
//еще стописят других условий
end;
end;
end.