Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

Autolumber - ламбер с автопоиском деревьев

Only working scripts
tyca7
Posts: 6
Joined: 21.02.2014 12:34

Re: Autolumber - ламбер с автопоиском деревьев

Post by tyca7 »

на 6,2,1 завелся норм скидывает все как надо, помогите за денежку переделать под авто поиск роков и кочек или обкопку скалы icq 133688566
Rasekill
Posts: 2
Joined: 10.11.2014 1:58

Re: Autolumber - ламбер с автопоиском деревьев

Post by Rasekill »

Ребят помогите .... не скидывает никак .. неужели никто эту проблему не решил? переход на более старую версию к сожалению не помог ((
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Autolumber - ламбер с автопоиском деревьев

Post by Vizit0r »

Rasekill wrote:переход на более старую версию к сожалению не помог ((
а должен был?

странно было бы, если бы на старой версии ламбер с поиском деревьев внезапно сам по себе стал обкапывать скалы.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Rasekill
Posts: 2
Joined: 10.11.2014 1:58

Re: Autolumber - ламбер с автопоиском деревьев

Post by Rasekill »

Я писал про лумбер как раз таки........ если на то ошло тема про лумбер и есть ... вот и написал ... есть ли решение этой проблемы не переходя на более старую версию ... так как старая версия не помогла с разгрузом
SunnyFireFly
Posts: 2
Joined: 18.12.2014 14:28

Re: Autolumber - ламбер с автопоиском деревьев

Post by SunnyFireFly »

Прошу прощения народ, а есть возможность добавления хайда перед рубкой?
Andy
Posts: 5
Joined: 25.01.2015 8:31

Re: Autolumber - ламбер с автопоиском деревьев

Post by Andy »

Прошу помочь. При запуске скрипта пишет в журнал:

Найдено деревьев: 0
Всего найдено деревьев: 0
Exec: [Error] (...\lamber.pas at 170:5): Out Of Range

У меня 170ая строка это:

ChopTilesArray[Length(ChopTilesArray) - 1] := TempFoundTilesArray[0];
из процедуры:
// Чистим записи дубликаты (Vizit0r :P)
procedure ClearDuplicate;
var
i, j : Integer;

begin
ChopTilesArray[Length(ChopTilesArray) - 1] := TempFoundTilesArray[0];
for i:=1 to Length(TempFoundTilesArray) - 1 do
begin
for j:=0 to Length(ChopTilesArray) - 1 do
if (ChopTilesArray[j] = TempFoundTilesArray) then
break;
if j > Length(ChopTilesArray) - 1 then
begin
SetArrayLength(ChopTilesArray, Length(ChopTilesArray) + 1);
ChopTilesArray[Length(ChopTilesArray) - 1] := TempFoundTilesArray;
end;
end;
AddToSystemJournal('После отсеивания дубликатов, осталось деревьев:' + IntToStr(Length(ChopTilesArray)));
end;

при этом перс не двигается ни на шаг.
В скрипте менял только координаты рядом с сундуком и id - сундука, а также четыре координаты мест рубки.
Подскажите на моем серваке не работает Stealth или в чем могут быть проблемы?
Andy
Posts: 5
Joined: 25.01.2015 8:31

Re: Autolumber - ламбер с автопоиском деревьев

Post by Andy »

Всем спасибо, ответ нашел. Проблема действительно с сервером на котором играю и соответственно с клиентом к нему.
MorZE[UA]
Posts: 8
Joined: 20.10.2011 15:45

Re: Autolumber - ламбер с автопоиском деревьев

Post by MorZE[UA] »

Ребят прошу помощи пожалуйста кто разбираеться.
Не могу понять где здесь поменять задержку.между рубкой, то есть когда чар один раз рубанул дерево он стоит долго до следующей попытки. Я так понимаю что тут дело и в настройке меседжа журнального. ? Если кто может тыкните пальцем где чего поменять.

Вот это я рублю, нарубил получил в пак.
You chop some ordinary logs and put them into your backpack.
По моему надо менять тут что то под свой шард
begin
if Not Connected then Exit;
if (NeededLevel < 0) or (NeededLevel > 10) then Exit;
HArray[0] := 'You are absolutely stuffed!';
HArray[1] := 'You are stuffed';
HArray[2] := 'hungry at all';
HArray[3] := 'You are a little hungry';
HArray[4] := 'You are somewhat hungry';
HArray[5] := 'You are REALLY hungry';
HArray[6] := 'Your stomash hurts';
HArray[7] := 'Your stomash hurts and you feel dizzy';
HArray[8] := 'You are starving';
HArray[9] := 'You are almost dying of hunger';
HArray[10] := 'You are DYING of hunger...';

и где то какие то задерже именно в процедуре
// Рубим дерево (Edred)
function LumbCurTree(tile,x,y,z : Integer) : Boolean;
// рубим указанный тайл. Возвращаем false если перевес или чар мертв.
var
q, m1, m2, m3, m4, m5, m6, m7, m8, CountFizzle, NextTree : integer;

begin
Result := true;
CountFizzle := 0;
repeat
if WarMode = true then SetWarMode(false);
if TargetPresent then CancelTarget;
ctime := Now;
if Dead then begin Result := false; exit; end;
if UseType(Hatchet1,$FFFF) = 0 then
begin
if UseType(Hatchet2,$FFFF) = 0 then
begin
Result := false;
exit;
end;
end;
WaitForTarget(1500);
If TargetPresent then TargetToTile(tile, x, y, z);
q := 0;
repeat
wait(100);
q := q + 1;
checksave;
m1 := InJournalBetweenTimes(Msg1, ctime, Now);
m2 := InJournalBetweenTimes(Msg2, ctime, Now);
m3 := InJournalBetweenTimes(Msg3, ctime, Now);
m4 := InJournalBetweenTimes(Msg4, ctime, Now);
m5 := InJournalBetweenTimes(Msg5, ctime, Now);
m6 := InJournalBetweenTimes(Msg6, ctime, Now);
m7 := InJournalBetweenTimes(Msg7, ctime, Now);
m8 := InJournalBetweenTimes(Msg8, ctime, Now);
until (m1<>-1) or (m2<>-1) or (m3<>-1) or (m4<>-1) or (m5<>-1) or (m6<>-1) or (m7<>-1) or (m8<>-1) or Dead or (q > 150);
if (m2<>-1) or (m3<>-1) or (m4<>-1) then CountFizzle := CountFizzle + 1;
if Dead or (Weight > MyMaxWeight) then begin Result := false; exit; end;
if (q > 150) then NextTree := NextTree + 1;
until (m5<>-1) OR (m6<>-1) OR (m7<>-1) OR (m8<>-1) OR (CountFizzle = 10) OR (NextTree > 3);
if NextTree >= 3 then NextTree := 0;
end;


Если можете подскажите где чего поменять чтоб чар не стоял долго перед деревом после того как рубанул дерево раз.
Roman
Neophyte
Neophyte
Posts: 37
Joined: 03.11.2014 21:48

Re: Autolumber - ламбер с автопоиском деревьев

Post by Roman »

MorZE[UA] wrote:Ребят прошу помощи пожалуйста кто разбираеться.
Не могу понять где здесь поменять задержку.между рубкой, то есть когда чар один раз рубанул дерево он стоит долго до следующей попытки. Я так понимаю что тут дело и в настройке меседжа журнального. ? Если кто может тыкните пальцем где чего поменять.

Вот это я рублю, нарубил получил в пак.
You chop some ordinary logs and put them into your backpack.
По моему надо менять тут что то под свой шард
begin
if Not Connected then Exit;
if (NeededLevel < 0) or (NeededLevel > 10) then Exit;
HArray[0] := 'You are absolutely stuffed!';
HArray[1] := 'You are stuffed';
HArray[2] := 'hungry at all';
HArray[3] := 'You are a little hungry';
HArray[4] := 'You are somewhat hungry';
HArray[5] := 'You are REALLY hungry';
HArray[6] := 'Your stomash hurts';
HArray[7] := 'Your stomash hurts and you feel dizzy';
HArray[8] := 'You are starving';
HArray[9] := 'You are almost dying of hunger';
HArray[10] := 'You are DYING of hunger...';

и где то какие то задерже именно в процедуре
// Рубим дерево (Edred)
function LumbCurTree(tile,x,y,z : Integer) : Boolean;
// рубим указанный тайл. Возвращаем false если перевес или чар мертв.
var
q, m1, m2, m3, m4, m5, m6, m7, m8, CountFizzle, NextTree : integer;

begin
Result := true;
CountFizzle := 0;
repeat
if WarMode = true then SetWarMode(false);
if TargetPresent then CancelTarget;
ctime := Now;
if Dead then begin Result := false; exit; end;
if UseType(Hatchet1,$FFFF) = 0 then
begin
if UseType(Hatchet2,$FFFF) = 0 then
begin
Result := false;
exit;
end;
end;
WaitForTarget(1500);
If TargetPresent then TargetToTile(tile, x, y, z);
q := 0;
repeat
wait(100);
q := q + 1;
checksave;
m1 := InJournalBetweenTimes(Msg1, ctime, Now); // добыл ...
m2 := InJournalBetweenTimes(Msg2, ctime, Now); // физл ...
m3 := InJournalBetweenTimes(Msg3, ctime, Now); // физл ...
m4 := InJournalBetweenTimes(Msg4, ctime, Now); // физл ...
m5 := InJournalBetweenTimes(Msg5, ctime, Now); // конец рубки ...
m6 := InJournalBetweenTimes(Msg6, ctime, Now); // конец рубки ...
m7 := InJournalBetweenTimes(Msg7, ctime, Now); // конец рубки ...
m8 := InJournalBetweenTimes(Msg8, ctime, Now); // конец рубки ...
until (m1<>-1) or (m2<>-1) or (m3<>-1) or (m4<>-1) or (m5<>-1) or (m6<>-1) or (m7<>-1) or (m8<>-1) or Dead or (q > 150); // задержка 15 секунд (15 = 1.5 сек)
if (m2<>-1) or (m3<>-1) or (m4<>-1) then CountFizzle := CountFizzle + 1; //если пришло сообщение (msg2 или msg3 или msg4) +1 физл
if Dead or (Weight > MyMaxWeight) then begin Result := false; exit; end; // если умер или набрал вес, выход с функции
if (q > 150) then NextTree := NextTree + 1; // если протупил 15 секунд, то рубишь следующее либо тупишь еще 3 раза по 15 секунд(хз что у тебе в скрипте) значения выделеные красным цветом должны быть одинаковы
until (m5<>-1) OR (m6<>-1) OR (m7<>-1) OR (m8<>-1) OR (CountFizzle = 10) OR (NextTree > 3); // если пришло (сообщение msg5 или msg6 или msg7 или msg8) или получили 10 сообщений с физлом или вырубил все что рубилось то заканчиваем попытки рубить
if NextTree >= 3 then NextTree := 0;
end;


Если можете подскажите где чего поменять чтоб чар не стоял долго перед деревом после того как рубанул дерево раз.
если не разбераешься и нет желания, то поменяй (q>150) на (q>15) и тупить будет в разы меньше
Last edited by Roman on 10.06.2015 14:22, edited 1 time in total.
MorZE[UA]
Posts: 8
Joined: 20.10.2011 15:45

Re: Autolumber - ламбер с автопоиском деревьев

Post by MorZE[UA] »

Спасибо вам Роман Буду пробывать )
MorZE[UA]
Posts: 8
Joined: 20.10.2011 15:45

Re: Autolumber - ламбер с автопоиском деревьев

Post by MorZE[UA] »

[quote="Roman"]

Вот наменял.... НО чет скорости не прибавилось ) как тупил чар переде деревом после попытки порубать или после удачного рубания так и ждет стоит )
// рубим указанный тайл. Возвращаем false если перевес или чар мертв.
var
q, m1, m2, m3, m4, m5, m6, m7, m8, CountFizzle, NextTree : integer;

begin
Result := true;
CountFizzle := 0;
repeat
if WarMode = true then SetWarMode(false);
if TargetPresent then CancelTarget;
ctime := Now;
if Dead then begin Result := false; exit; end;
if UseType(Hatchet1,$FFFF) = 0 then
begin
if UseType(Hatchet2,$FFFF) = 0 then
begin
Result := false;
exit;
end;
end;
WaitForTarget(1500);
If TargetPresent then TargetToTile(tile, x, y, z);
q := 0;
repeat
wait(100);
q := q + 1;
checksave;
m1 := InJournalBetweenTimes(Msg1, ctime, Now);// добыл ...
m2 := InJournalBetweenTimes(Msg2, ctime, Now);// физл ..
m3 := InJournalBetweenTimes(Msg3, ctime, Now);// физл ...
m4 := InJournalBetweenTimes(Msg4, ctime, Now);// физл ...
m5 := InJournalBetweenTimes(Msg5, ctime, Now);// конец рубки ...
m6 := InJournalBetweenTimes(Msg6, ctime, Now);// конец рубки ...
m7 := InJournalBetweenTimes(Msg7, ctime, Now);// конец рубки ...
m8 := InJournalBetweenTimes(Msg8, ctime, Now);// конец рубки ...
until (m1<>-1) or (m2<>-1) or (m3<>-1) or (m4<>-1) or (m5<>-1) or (m6<>-1) or (m7<>-1) or (m8<>-1) or Dead or (q > 2);
if (m2<>-1) or (m3<>-1) or (m4<>-1) then CountFizzle := CountFizzle + 1;
if Dead or (Weight > MyMaxWeight) then begin Result := false; exit; end;
if (q > 2) then NextTree := NextTree + 1;
until (m5<>-1) OR (m6<>-1) OR (m7<>-1) OR (m8<>-1) OR (CountFizzle = 1) OR (NextTree > 2);
if NextTree >= 3 then NextTree := 0;
end;
Прошу прощение начал рубать пару раз и отбегает от дерева даже не получив меседж что там нету дерева типо попытки надо менять где не знаю А ждать он уже не ждет долго спасибо вам большое
Roman
Neophyte
Neophyte
Posts: 37
Joined: 03.11.2014 21:48

Re: Autolumber - ламбер с автопоиском деревьев

Post by Roman »

Code: Select all

// Журнал
  Msg1 = 'переместили'; 
  Msg2 = 'не смогли'; 
  Msg3 = 'hack'; 
  Msg4 = 'You decide not to chop wood'; 
  Msg5 = 'There is nothing';
  Msg6 = 'appears immune';
  Msg7 = 'Try chopping';
  Msg8 = 'reach this';
это в самом начале твоего скрипта. поменяй эти сообщения на те что приходят у тебя на шарде

Code: Select all

(q>2) это мало. поставь 15 это будет 1500мс(1.5сек). каждая единица это 100мс, выставляй задержку исходя из этого
MorZE[UA]
Posts: 8
Joined: 20.10.2011 15:45

Re: Autolumber - ламбер с автопоиском деревьев

Post by MorZE[UA] »

Ребят еще один вопросик прошу помощи, можно ли как то в этом скрипте сделать чтоб чар или бегал или ходил чтоли быстрее Ну тоесть задержку между шагами Немогу найти где менять? или это в инклуде ходьбы надо менять ? Ставлю олвейс ран Чар все равно шагает по чуть чуть рывками. Надо или чтоб бегал или чтоб задержка между шагами так называймыми рывками была меньше. Спасибо
drabadan
Expert
Expert
Posts: 730
Joined: 13.12.2012 17:35
Contact:

Re: Autolumber - ламбер с автопоиском деревьев

Post by drabadan »

MorZE[UA] wrote:Ребят еще один вопросик прошу помощи, можно ли как то в этом скрипте сделать чтоб чар или бегал или ходил чтоли быстрее Ну тоесть задержку между шагами Немогу найти где менять? или это в инклуде ходьбы надо менять ? Ставлю олвейс ран Чар все равно шагает по чуть чуть рывками. Надо или чтоб бегал или чтоб задержка между шагами так называймыми рывками была меньше. Спасибо
нормально он бегает, зайди другим персонажем и посмотри на етого на маршруте.
edur0x
Posts: 9
Joined: 24.12.2013 7:51

Re: Autolumber - ламбер с автопоиском деревьев

Post by edur0x »

I would like to use this Lumber Macro with Trees Spot`s Save, it would be possible?
Here not worked very well taking the Automatic trees then myself would like to getting spots tree.
Sorry my english is bad =/

Example:


SpotCount := 15;

SpotX[1] := 4032
SpotY[1] := 335
SpotX[2] := 4035
SpotY[2] := 338
SpotX[3] := 4031
SpotY[3] := 341
SpotX[4] := 5453
SpotY[4] := 1502
SpotX[5] := 5457
SpotY[5] := 1502
SpotX[6] := 5461
SpotY[6] := 1502
SpotX[7] := 5462
SpotY[7] := 1498
SpotX[8] := 5462
SpotY[8] := 1493
SpotX[9] := 5458
SpotY[9] := 1493
SpotX[10] := 5454
SpotY[10] := 1493
SpotX[11] := 5450
SpotY[11] := 1493
SpotX[12] := 5446
SpotY[12] := 1493
SpotX[13] := 5442
SpotY[13] := 1493
SpotX[14] := 5442
SpotY[14] := 1489
SpotX[15] := 5446
SpotY[15] := 1489
Post Reply