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

Управление из одного скрипта другим

Only working scripts
nepopus
Novice
Novice
Posts: 121
Joined: 29.02.2012 23:45
Location: Москва
Contact:

Управление из одного скрипта другим

Post by nepopus »

Здравствуйте, писал на yoko макрос на мининг, теперь хочу переписать для stelth, но столкнулся с проблемой, что не знаю как запустить самостоятельную процедуру или скрипт, которые могли бы при необходимости поставить на паузу или отменить на какое-то время другие скрипты.
Например самостоятельная процедура, которая постоянно ищет ПК, и при его появлении останавливает останавливает основную процедуру мининга и телепортируется домой.
Пока идея только сделать постоянную проверку перед каждым действием, но с етим хромает скорость отклика на появление пк.
Заранее благодарен. Если подскажете, выложу его сюда когда закончу = ) В противном случае придется доделывать на yoko (
<( o_O<) <( O_O )> (>O_o )>
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Управление из одного скрипта другим

Post by Vizit0r »

yoko - это ник человека, а программа зовется injection )

ставить на паузу и останавливать другие скрипты нельзя.

Зато можно грамотно построить скрипт:
1) вместо функции которая постоянно проверяет наличие ПК - использовать ивент на появление (N) PC на экране - и проверять уже каждого появившегося, и тогда уже если что поднимать тревогу
2) основное время ожиданий в скриптах - это циклы и бег. Вот в них-то и сделать проверку в т.ч. и на срабатывание сигнализации.


Остановка и запуск других скриптов из своего для чего-то - это исключительно дурное наследие инжекта. Стелс предоставляет огромное кол-во возможностей для правильного построения скриптов без использования этих глупостей.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
nepopus
Novice
Novice
Posts: 121
Joined: 29.02.2012 23:45
Location: Москва
Contact:

Re: Управление из одного скрипта другим

Post by nepopus »

Code: Select all

//вначале обяз
ignorereset;
// гдето там у меня назначены переменные
playertype[1] := $0190;
playertype[2] := $0191;
finddistance := 20;
//

procedure danger;
begin
  for i = 1 to 2 do
  begin
    while findtype(playertype[i], ground) <> 0 do //пока видим новых игроков
    begin
      if getnotoriety(finditem) > 2 then //если серый/оранжевый/красный
      begin
        gohomeanddropandgomine; //быстрый реколл/разгруз/реколл обратно
        mining;                            //запускаем основную процедуру заного вроде как перезагружая скрипт
      end;
      ignore(finditem);   //если синий или зеленый,тогда просто игнорим
    end;
  end;
end;
как понял скрипт не вешает клиент и можно не ставить задержек. поправте если не так.

добавлено... тока вспомнил что основной процедуры то и нету = ) это ж само тело скрипта. а как тогда начать сначало?
Last edited by nepopus on 01.03.2012 15:28, edited 1 time in total.
<( o_O<) <( O_O )> (>O_o )>
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Управление из одного скрипта другим

Post by Vizit0r »

если внутри скрипта вставить wait(50) - не будет вешать точно.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
nepopus
Novice
Novice
Posts: 121
Joined: 29.02.2012 23:45
Location: Москва
Contact:

Re: Управление из одного скрипта другим

Post by nepopus »

еще как быть при ходьбе? написать свою мини ходилку по шахте и вставлять перед каждым шагом эту процедуру? или можно как то выкрутится с newmovexy?
<( o_O<) <( O_O )> (>O_o )>
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Управление из одного скрипта другим

Post by Vizit0r »

получать массив точек маршрута и шагать. перед каждым шагом - проверять, да.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
sadX_Xface
Neophyte
Neophyte
Posts: 34
Joined: 10.04.2012 11:28

Re: Управление из одного скрипта другим

Post by sadX_Xface »

Vizit0r wrote: 1) вместо функции которая постоянно проверяет наличие ПК - использовать ивент на появление (N) PC на экране - и проверять уже каждого появившегося, и тогда уже если что поднимать тревогу
Можно по подробнее пожалуйста? Я как понимаю у автора поста выше (как в общем сейчас и у меня) постоянно идет поиск. Что за ивент на появление неписи на экране? Если это конечно что-то отличное от приведенного решения тупого поиска вокруг.

И еще можно ли как-то передавать переменные из одного инстанса стелса в другой? В принципе могу на данный момент реализовать передачу через файл, но вдруг можно как-то изящнее))
drabadan
Expert
Expert
Posts: 730
Joined: 13.12.2012 17:35
Contact:

Re: Управление из одного скрипта другим

Post by drabadan »

sadX_Xface wrote:
Vizit0r wrote: 1) вместо функции которая постоянно проверяет наличие ПК - использовать ивент на появление (N) PC на экране - и проверять уже каждого появившегося, и тогда уже если что поднимать тревогу
Можно по подробнее пожалуйста? Я как понимаю у автора поста выше (как в общем сейчас и у меня) постоянно идет поиск. Что за ивент на появление неписи на экране? Если это конечно что-то отличное от приведенного решения тупого поиска вокруг.

И еще можно ли как-то передавать переменные из одного инстанса стелса в другой? В принципе могу на данный момент реализовать передачу через файл, но вдруг можно как-то изящнее))
читай налету память одного процесса другим... :) а нахрена 2 стелса запускать?
sadX_Xface
Neophyte
Neophyte
Posts: 34
Joined: 10.04.2012 11:28

Re: Управление из одного скрипта другим

Post by sadX_Xface »

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

даже если не драться в ответ было бы не плохо чтобы они хотя бы все разом прятались и ждали пока пк не уйдет.
drabadan
Expert
Expert
Posts: 730
Joined: 13.12.2012 17:35
Contact:

Re: Управление из одного скрипта другим

Post by drabadan »

sadX_Xface wrote:да я тут сервачек интересный нашел))) ботоводство нормой считается... надоели убивать своими ботами моих лесорубов. я уже им и хайд вкачал со стелсом все равно убивают... а тут случайно чужой антибот нарвался на парочку лесорубов которым я прокачал сворду тактику и анатомию и огреб чисто от аттакбэка)))) ну я и задумался а чего собственно прятаться если можно и подраться... но боюсь за такое и забанить могут. вот думаю сижу как бы схитрить и в бан не попасть)

даже если не драться в ответ было бы не плохо чтобы они хотя бы все разом прятались и ждали пока пк не уйдет.
так ты хочешь, чтоб если к 1 чару приходит кент - то твой второй чар прибегает к первому и они на пару гасят кента?
sadX_Xface
Neophyte
Neophyte
Posts: 34
Joined: 10.04.2012 11:28

Re: Управление из одного скрипта другим

Post by sadX_Xface »

Хотел. Все-таки у меня совесть есть. Их же там не два, а пяток бегает. Жестко и имхо против правил. Боты в пвп (не важно в каком контексте даже если просто отвечают агрессией на агрессию) это слишком. Так что теперь я хочу чтобы они просто если один кого заметил спрятались и тихо сидели все. По другому их по одному разбирают и все. А так один умрет - остальные в хайд и на паузу минут на 5. Всяко выживаемость возрастет.
drabadan
Expert
Expert
Posts: 730
Joined: 13.12.2012 17:35
Contact:

Re: Управление из одного скрипта другим

Post by drabadan »

sadX_Xface wrote:Хотел. Все-таки у меня совесть есть. Их же там не два, а пяток бегает. Жестко и имхо против правил. Боты в пвп (не важно в каком контексте даже если просто отвечают агрессией на агрессию) это слишком. Так что теперь я хочу чтобы они просто если один кого заметил спрятались и тихо сидели все. По другому их по одному разбирают и все. А так один умрет - остальные в хайд и на паузу минут на 5. Всяко выживаемость возрастет.
так а шо детектить долго?
sadX_Xface
Neophyte
Neophyte
Posts: 34
Joined: 10.04.2012 11:28

Re: Управление из одного скрипта другим

Post by sadX_Xface »

5 лесорубов это очень приличная площадь по которой надо пройти, найти, отдетектить. чтобы делать это быстро и уверенно нужен перс со скилами. на вскидку минут 30 а то и больше человек на это потратит. Подчеркиваю человек. Бот просто убьет одного побегает да побежит дальше.
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Управление из одного скрипта другим

Post by Vizit0r »

sadX_Xface wrote:
Vizit0r wrote: 1) вместо функции которая постоянно проверяет наличие ПК - использовать ивент на появление (N) PC на экране - и проверять уже каждого появившегося, и тогда уже если что поднимать тревогу
Можно по подробнее пожалуйста? Я как понимаю у автора поста выше (как в общем сейчас и у меня) постоянно идет поиск. Что за ивент на появление неписи на экране? Если это конечно что-то отличное от приведенного решения тупого поиска вокруг.
что именно поподробнее? вперед читать про GetPathArray

evDrawObject
sadX_Xface wrote: И еще можно ли как-то передавать переменные из одного инстанса стелса в другой? В принципе могу на данный момент реализовать передачу через файл, но вдруг можно как-то изящнее))
1) ExportedMethod^.FuncProc := 'function';
ExportedMethod^.FuncName := 'SendMessageToWindow';
ExportedMethod^.FuncParamsCount := 3;
ExportedMethod^.FuncParams[0] := 'WindowHandle : Cardinal';
ExportedMethod^.FuncParams[1] := 'CharID : Cardinal';
ExportedMethod^.FuncParams[2] := 'ByteArr: TByteArr';
ExportedMethod^.FuncReturnValue := 'Integer';
+
ExportedMethod^.FuncProc := 'function';
ExportedMethod^.FuncName := 'GetSelfHandle';
ExportedMethod^.FuncParamsCount := 0;
ExportedMethod^.FuncReturnValue := 'Cardinal';

+
у получателя
evWindowsMessage (procedure (lParam:Cardinal); lParam:Cardinal - указатель на байт-массив)

2) через реестр, например. Или через файл. Или еще как.


хотя мне непонятны такие сложности. почему не держать таких чаров в одном стелсе?
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
sadX_Xface
Neophyte
Neophyte
Posts: 34
Joined: 10.04.2012 11:28

Re: Управление из одного скрипта другим

Post by sadX_Xface »

омг((( евенты просто прекрасны!!! но теперь мне походу предстоит опять переписать все что у меня есть(((

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

стелс великолепен!
Post Reply