Page 1 of 1
Трабл !!
Posted: 30.07.2008 23:33
by MeLFiS
Моя проблема заключается в том, что мой стелс клиент залагивает, т.е. я куда-то ухожу, когда возвращаюсь, стелс как-бы запущен, но открыть его не могу, а чары уже давно в оффе.. .
Что это может быть?
Posted: 31.07.2008 5:15
by proZak
У меня тоже пару раз было но в посленее время не замечаю.
Думаю ето иза большого количества чаров одновремено в сети с одного окна стелса и кода происходит розрыв с интернетом или серваком на котором вы играете при реконете зависает стелс или хз...
Posted: 31.07.2008 11:23
by MeLFiS
Всего то 4 чара не так уж и много ))
Posted: 31.07.2008 13:15
by -=JoKeR=-
Не запускаешь пару скриптов одному чару ? Стэлс из-за этого может зависнуть.
Posted: 31.07.2008 16:32
by MeLFiS
как вывел експеремент стелс зависает из-за скрипта ))
вот сам скрипт )
Code: Select all
Program carpentry;
var
TwoTarget,ItemCostWood,ItemCostTwoMaterial,TotalWoods,TotalTwoMaterial,i: integer;
stime : TDateTime;
Trash,TempWoods,TempTwoMaterial : cardinal;
TwoMaterialType,WoodType,ItemType,ToolType : word;
ItemGump:string;
{$Include 'all.inc'}
procedure FullDisconnect;
begin
SetARStatus(false);
Disconnect;
end;
function timer(var acttimer:integer;actafter:integer):boolean;
begin
result:=false;
acttimer:=acttimer+1;
if acttimer>=actafter then
begin
acttimer:=0;
result:=true;
end;
end;
procedure Checktools;
begin
WaitConnection(3000);
checksave;
findtype(ToolType,backpack);
if (findcount > 0) then Exit;
findtype(ToolType,ground);
if (findcount > 0) then
begin
Grab(finditem,1)
Exit;
end;
Addtosystemjournal('Не нашел инструмент в приделах досягаемости, чара в лагаут');
FullDisconnect;
while true do wait(1000);
end;
procedure CheckTwoMaterial;
Label a1st;
begin
WaitConnection(3000);
checksave;
if (GetQuantity(TempTwoMaterial) >= ItemCostTwoMaterial) then Exit;
a1st:
WaitConnection(3000);
findtype(TwoMaterialType,ground);
if findcount = 0 then
begin
Addtosystemjournal('Закончился дополнительный материал, либо он не найден, чара в лагаут');
FullDisconnect;
while true do wait(1000);
end;
if findquantity < ItemCostTwoMaterial then
begin
Ignore(finditem);
goto a1st;
end
else TempTwoMaterial:=finditem;
end;
procedure Checkwoods;
Label a1st;
begin
WaitConnection(3000);
checksave;
if (GetQuantity(TempWoods) >= ItemCostWood) then Exit;
a1st:
WaitConnection(3000);
findtype(WoodType,ground);
if findcount = 0 then
begin
Addtosystemjournal('Закончилось дерево, либо оно не найдено, чара в лагаут');
FullDisconnect;
while true do wait(1000);
end;
if findquantity < ItemCostWood then
begin
Ignore(finditem);
goto a1st;
end
else TempWoods:=finditem;
end;
procedure MoveMakeItem;
begin
findtype(ItemType,backpack);
if findcount > 0 then
begin
ClickOnObject(finditem); {контроль за цветом и типом производимой вещи}
repeat
Checksave;
moveitem(findtype(ItemType,backpack),1,Trash,0,0,0);
until findcount < 1
end;
end;
Begin
{===============================================================================
======================================}
TwoTarget:=0; {1 или 0, при 1 качаемся на муз.инструментах, удочках, при 0 на всем остальном}
ItemGump:='3834'; {номер гампа делаемого итема}
ItemType:=$0EFA; {тайп делаемого итема}
ToolType:=$1035; {тайп инструмета}
WoodType:=$1BDD; {тайп дерева}
TwoMaterialType:=$1BF2 {при использовании 2 таргетов дополнительный материал, железо или ткань}
Trash:=$47CC69C1; {ID мусорника}
ItemCostWood:=8; {кол-во дерева требуемое на 1 итем}
ItemCostTwoMaterial:=2; {кол-во дополнительного материала требуемое на 1 итем}
{===============================================================================
======================================}
FindDistance := 2;
SetARStatus(true);
TempWoods:=0;
TempTwoMaterial:=0;
Clearjournal;
if connected then hungry(1,ground);
while not dead do
begin
if targetpresent then canceltarget;
MoveMakeItem;
CheckTools;
if TwoTarget=1 then CheckTwoMaterial;
CheckWoods;
WaitConnection(2000);
checksave;
CheckTargetError(2,2);
stime := Now;
WaitGump(ItemGump);
if (Count(WoodType) = 0) then
begin
Grab(TempWoods, 8);
wait(1000);
end;
FindType(WoodType, BackPack);
WaitTargetObject(FindItem);
UseObject(FindType(ToolType,backpack));
if TwoTarget=1 then
begin
repeat
CheckSave;
InJournalBetweenTimes('ingots|fabric|already', stime, Now);
wait(50);
until (LineCount > 0) or (Now > stime + (1.0/1440));
WaitTargetObject(TempTwoMaterial);
end;
repeat
CheckSave;
InJournalBetweenTimes('destroy|make|create|made|already', stime, Now);
wait(50);
until (LineCount > 0) or (Now > stime + (1.0/1440));
if timer(i,100) then
begin
Hungry(1,ground);
FindType(WoodType,ground);
TotalWoods:=FindFullQuantity;
if TwoTarget=1 then
begin
FindType(TwoMaterialType,ground);
TotalTwoMaterial:=FindFullQuantity;
AddToSystemJournal('Осталось '+IntToStr(TotalWoods)+' дерева и '+IntToStr(TotalTwoMaterial)+' доп. материала');
end
else AddToSystemJournal('Осталось '+IntToStr(TotalWoods)+' дерева ');
end;
end;
End.
Posted: 31.07.2008 17:28
by RaTaMaHaTTa
Пробежался глазами но не более
чёто вроде задержек малавато, както всё налеплено очень.
Posted: 08.09.2008 11:03
by SaNeK
RaTaMaHaTTa wrote:Пробежался глазами но не более
чёто вроде задержек малавато, както всё налеплено очень.
Скрипт проглядел. По поводу зажержек, если их не достаточно, то стел будет использовать всю оперативу. Запусти диспетчер и при запуске скрипта посмотри как стелс его загружает. Есил по максимуму, то просмотри где нехватает задержек (достаточно wait(50))
Бывает, что стелс не хочет разворачиватся. Чаще связанно с его постоянной активностью (вкл.) Раз в пару дней бывает при безперерываном использовании.