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

Golden_Boy зарабатываем зоолто убивая мобов.

Only working scripts
MaskedPerson
Neophyte
Neophyte
Posts: 31
Joined: 14.03.2015 12:39

Re: Golden_Boy зарабатываем зоолто убивая мобов.

Post by MaskedPerson »

Да, парни, спасибо большое, но мне бы пример реализации наглядный. Мои познания в стелсе равны нулю. Но я не тупой. Скрипт уже переделал с рунбука на простые руны, но только потому, что видел скрипт перед собой, и логически можно понять, что и где менять. А с нуля что-то дописать - это нереально для меня на данный момент. Если не сложно накидайте пример реализации, или может ссылку на скрипт, где это реализовано (я не нашёл), я уже сам додумаю.
drabadan
Expert
Expert
Posts: 730
Joined: 13.12.2012 17:35
Contact:

Re: Golden_Boy зарабатываем зоолто убивая мобов.

Post by drabadan »

MaskedPerson wrote:Да, парни, спасибо большое, но мне бы пример реализации наглядный. Мои познания в стелсе равны нулю. Но я не тупой. Скрипт уже переделал с рунбука на простые руны, но только потому, что видел скрипт перед собой, и логически можно понять, что и где менять. А с нуля что-то дописать - это нереально для меня на данный момент. Если не сложно накидайте пример реализации, или может ссылку на скрипт, где это реализовано (я не нашёл), я уже сам додумаю.
в процедуре лута последней командой поставь Ignore({Id трупа}corpse)
MaskedPerson
Neophyte
Neophyte
Posts: 31
Joined: 14.03.2015 12:39

Re: Golden_Boy зарабатываем зоолто убивая мобов.

Post by MaskedPerson »

Code: Select all

  begin 
            telo:=finditem; //telo - ИД убитый монстр  
            checklag(60000);
            if NewMoveXY(GetX(telo),GetY(telo),true,1,true) = false then 
            //tele(buttonSkelet); 
            begin
           // tele(buttonSkelet);     
            dotResp:=0;  
            NewMoveXY(dot[dotResp].X,dot[dotResp].Y,true,1,true);
            end;  
             
            checklag(60000); 
            ctime := Now;
            UseObject(telo);  // Открывает труп
            if WaitJournalLine(ctime,'not earn the right to loot this creature', 500) = false then
                begin  
                for hhh:=0 to (GetArrayLength(grabmas)-1)  do 
                  begin 
                  if  CountEx(grabmas[hhh],$FFFF,telo)>0 then
                      begin  
                        checklag(60000);
                        Grab(findItem,telo);   // Забирает лут
                        wait(1100); 
                      end;  
                  end ;
              end;
           ignore(telo); 
        end ;    
      end ;
Я так понимаю, что нужно заменить

Code: Select all

ignore(telo); 
на

Code: Select all

Ignore({Id трупа}corpse)
ID трупа - 'telo', но что за 'corpse'?
drabadan
Expert
Expert
Posts: 730
Joined: 13.12.2012 17:35
Contact:

Re: Golden_Boy зарабатываем зоолто убивая мобов.

Post by drabadan »

если там так, то менять ничего не надо. Оно ж игнорит, ищи игнорересет или там все ок со скриптом.
MaskedPerson
Neophyte
Neophyte
Posts: 31
Joined: 14.03.2015 12:39

Re: Golden_Boy зарабатываем зоолто убивая мобов.

Post by MaskedPerson »

drabadan wrote:если там так, то менять ничего не надо. Оно ж игнорит, ищи игнорересет или там все ок со скриптом.
Ну теперь хотя бы знаю, почему не работает игнор :mrgreen:

Code: Select all

function targetzertva:cardinal;
var
//bad_list:array [0..400] of cardinal;
distance,mob:integer;
cur_mob:cardinal;                 
begin
distance := 9999999;
FindDistance:=FindDistanceMob;
    
    for mob:=0 to (GetArrayLength(monstro)-1) do 
        while FindType(monstro[mob],Ground) <> 0 do  
          begin
           AddToSystemJournal('function targetzertva '+inttohex(FindItem,8));
            if GetDistance(FindItem) < distance  then      
                begin
                distance := GetDistance(FindItem) ;
                cur_mob := FindItem;
            end;                
                Ignore(FindItem); 
          end;       
    IgnoreReset;           
 //AddToSystemJournal('Жертва: '+GetName(cur_mob)+'. координата Х: '+inttostr(GetX(cur_mob))+'. координата Y: '+inttostr(GetY(cur_mob))+'. дистанция: ' +inttostr(GetDistance(cur_mob)));     
//if (GetX(cur_mob) in [3686..3701]) and (GetY(cur_mob) in [2502..2521]) then cur_mob:= 0;
if (GetX(cur_mob)>3686) and (GetY(cur_mob)>2502) and (GetX(cur_mob)<3701) and (GetY(cur_mob)<2521) then cur_mob:=0; 

result:= cur_mob;    //получаем сериал ближнего моба
end;
Скрипт использует ignorereset при поиске ближайшего моба :( Если убрать отсюда ignorereset - не работает поиск мобов после первого убитого. Если оставить - не работает игнор трупаков :mrgreen:
MaskedPerson
Neophyte
Neophyte
Posts: 31
Joined: 14.03.2015 12:39

Re: Golden_Boy зарабатываем зоолто убивая мобов.

Post by MaskedPerson »

В общем, переделал в скрипте что смог, все работает как надо, но с трупами проблему так и не решил. Пришлось искать новое место для фарма. Так наверное даже лучше. На новом месте более разнообразные мобы, теперь оставляет всего 10% лута. Спасибо автору за скрипт, всем остальным спасибо за "помощь" :mrgreen:
Post Reply